con = $con; if(is_array($input)) { $this->sqlData = $input; } else { // $query = $this->con->prepare("SELECT * FROM videos WHERE id = :id OR url = :url"); $query = $this->con->prepare("SELECT * FROM posts WHERE url = :url"); $query->bindParam(":url", $input); $query->execute(); $this->sqlData = $query->fetch(PDO::FETCH_ASSOC); } } public function getPostId() { return $this->sqlData["id"]; } public function getPostUrl() { return $this->sqlData["url"]; } public function getPostContent() { return $this->sqlData["content"]; } public function getPostAuthor() { return $this->sqlData["author"]; } public function getPublishedDate() { $dateStr = $this->sqlData["published"]; // return date('M j Y g:i A', strtotime($rawDate)); $timestamp = strtotime($dateStr); $day = 60 * 60 * 24; $today = time(); // current unix time $since = $today - $timestamp; # If it's been less than 1 day since the tweet was posted, figure out how long ago in seconds/minutes/hours if (($since / $day) < 1) { $timeUnits = array( array(60 * 60, 'h'), array(60, 'm'), array(1, 's') ); for ($i = 0, $n = count($timeUnits); $i < $n; $i++) { $seconds = $timeUnits[$i][0]; $unit = $timeUnits[$i][1]; if (($count = floor($since / $seconds)) != 0) { break; } } return "$count{$unit} ago"; # If it's been a day or more, return the date: day (without leading 0) and 3-letter month } else { return date('M j Y g:i A', strtotime($dateStr)); } } } ?>