id == $id; $display_all = $active_user->admin || ($is_current_active && !$active_user->guest); $v = new Theme_View("page.html", "other", "profile"); $v->page_title = t("%name Profile", array("name" => $user->display_name())); $v->content = new View("user_profile.html"); // @todo modify user_home to supply a link to their album, // @todo add list of watches // @todo add all comments // @todo add rest api key $v->content->user = $user; $v->content->height = 250; $v->content->not_current = !$is_current_active; $v->content->editable = identity::is_writable() && $display_all; $v->content->return = SafeString::of(Input::instance()->get("return")); $fields = array("name" => t("Name"), "locale" => t("Locale"), "email" => t("Email"), "full_name" => t("Full name"), "url" => "Web site"); if (!$display_all) { $fields = array("name" => t("Name"), "full_name" => t("Full name"), "url" => "Web site"); } $v->content->fields = array(); foreach ($fields as $field => $label) { if (!empty($user->$field)) { $v->content->fields[(string)$label->for_html()] = $user->$field; } } print $v; } public function contact($id) { $user = identity::lookup_user($id); print user_profile::get_contact_form($user); } public function send($id) { $user = identity::lookup_user($id); $form = user_profile::get_contact_form($user); if ($form->validate()) { Sendmail::factory() ->to($user->email) ->subject($form->message->subject->value) ->header("Mime-Version", "1.0") ->header("Content-type", "text/html; charset=iso-8859-1") ->reply_to($form->message->reply_to->value) ->message($form->message->message->value) ->send(); message::success(t("Sent message to %user_name", array("user_name" => $user->display_name()))); print json_encode(array("result" => "success")); } else { print json_encode(array("result" => "error", "form" => (string)$form)); } } }