/** * @author Naomichi Yamakita <*****@*****.**> */ private function buildLaunchURI($type, $queryData) { if ($type === Mars_MixiApp::AGENT_TYPE_PC || $type == Mars_MixiApp::AGENT_TYPE_SMARTPHONE) { $buffer = NULL; if (sizeof($queryData)) { $buffer = '&' . http_build_query($queryData, '', '&'); } $uri = sprintf('http://mixi.jp/run_appli.pl?id=%s%s', Mars_MixiMobileApp::getApplicationId(), $buffer); } else { if (!isset($queryData['action'])) { $queryData['action'] = Mars_Config::loadSetup('action.default'); } $uri = Mars_MixiMobileApp::buildForwardActionURI($queryData, TRUE); } return $uri; }
/** * ユーザの位置情報を取得するためのリンクタグを生成します。 * * @param string $label {@link Mars_HTMLHelper::link()} メソッドを参照。 * @param mixed $path {@link Mars_HTMLHelper::link()} メソッドを参照。 * @param bool $gps 位置情報の取得方法を設定。 * TRUE 指定時は携帯電話の GPS から、FALSE 指定時は基地局情報から大まかな場所を取得する。 * <i>SoftBank 端末に関しては正確な位置情報を取得できない (S! GPS 非対応) 端末があるため、gps を TRUE に指定した際の動作は FALSE と同等になる。</i> * @param mixed $attributes タグに追加する属性。{@link Mars_HTMLHelper::link()} メソッドを参照。 * @return string 生成したリンクタグを返します。 * @link http://developer.mixi.co.jp/appli/spec/mob/for_partners/get_gps_info 位置情報取得について * @author Naomichi Yamakita <*****@*****.**> */ public function location($label, $path, $gps = FALSE, $attributes = array()) { if ($gps && !$this->request->getUserAgent()->isSoftBank()) { $path = 'location:gps' . Mars_MixiMobileApp::buildForwardActionURI($path); } else { $path = 'location:cell' . Mars_MixiMobileApp::buildForwardActionURI($path); } $buffer = $this->baseLink($label, $path, $attributes, array()); return $buffer; }