コード例 #1
0
ファイル: JiraCalHelper.php プロジェクト: josevh/jiracal
 private static function jiraProjectID($key)
 {
     $api = JiraCalHelper::jiraApi();
     return $api->getProject($key)['id'];
 }
コード例 #2
0
ファイル: JiraCalController.php プロジェクト: josevh/jiracal
 /**
  * Check jira credentials and validate.
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function auth(Request $request)
 {
     // should never happen, is checked in view
     if (is_null(config('jiracal.jira_url'))) {
         return redirect()->back()->withInput()->withErrors(['message' => 'Jira URL is not configured.']);
     }
     $username = '';
     $password = '';
     if ($request->has('guest') && $request->input('guest') == 'true') {
         if (!is_null(config('jiracal.guest_jira_username')) && !is_null(config('jiracal.guest_jira_password'))) {
             $username = config('jiracal.guest_jira_username');
             $password = config('jiracal.guest_jira_password');
         } else {
             return redirect()->back()->withInput()->withErrors(['message' => 'Jira guest is not configured.']);
         }
     } else {
         $this->validate($request, ['jira-username' => 'required', 'jira-password' => 'required']);
         $username = $request->input('jira-username');
         $password = $request->input('jira-password');
     }
     try {
         $api = JiraCalHelper::jiraApi($username, $password);
         $projects = [];
         //TODO: better initialization?
         $projects = $api->getProjects();
     } catch (\chobie\Jira\Api\UnauthorizedException $ue) {
         return redirect()->back()->withInput()->withErrors(['message' => 'Jira authentication failed, please try again.']);
     } catch (\chobie\Jira\Api\Exception $ex1) {
         return redirect()->back()->withInput()->withErrors(['message' => 'Error: ' . $ex1]);
     } catch (\Exception $ex2) {
         return redirect()->back()->withInput()->withErrors(['message' => 'Error: ' . $ex2]);
     }
     if ($projects != false) {
         session(['jira-username' => $username, 'jira-password' => \Crypt::encrypt($password), 'jira-auth' => true]);
         // return redirect()->action('\Josevh\JiraCal\JiraCalController@index');
         return redirect()->to(session()->get('_loginref'));
     } else {
         return redirect()->back()->withInput()->withErrors(['message' => 'Unable to connect to Jira, please try again.']);
     }
 }