JAL-1645 Version-Rel Version 2.9 Year-Rel 2015 Licensing glob
[jalview.git] / src / jalview / gui / UserQuestionnaireCheck.java
index f384c96..c286935 100644 (file)
@@ -1,28 +1,52 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9)
+ * Copyright (C) 2015 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.gui;
 
-import java.io.*;
-import java.net.*;
+import jalview.util.MessageManager;
 
-import javax.swing.*;
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+import java.net.URL;
 
-public class UserQuestionnaireCheck
-    implements Runnable
+import javax.swing.JOptionPane;
+
+public class UserQuestionnaireCheck implements Runnable
 {
   /**
    * Implements the client side machinery for detecting a new questionnaire,
-   * checking if the user has responded to an existing one,
-   * and prompting the user for responding to a questionnaire.
-   * This is intended to work with the perl CGI scripts checkresponder.pl and
-   * questionnaire.pl
+   * checking if the user has responded to an existing one, and prompting the
+   * user for responding to a questionnaire. This is intended to work with the
+   * perl CGI scripts checkresponder.pl and questionnaire.pl
    */
   String url = null;
+
   UserQuestionnaireCheck(String url)
   {
     if (url.indexOf("questionnaire.pl") == -1)
     {
-      jalview.bin.Cache.log.error("'" + url +
-          "' is an Invalid URL for the checkForQuestionnaire() method.\n"
-                                  + "This argument is only for questionnaires derived from jalview's questionnaire.pl cgi interface.");
+      jalview.bin.Cache.log
+              .error("'"
+                      + url
+                      + "' is an Invalid URL for the checkForQuestionnaire() method.\n"
+                      + "This argument is only for questionnaires derived from jalview's questionnaire.pl cgi interface.");
     }
     else
     {
@@ -31,16 +55,17 @@ public class UserQuestionnaireCheck
   }
 
   String qid = null, rid = null;
-  private boolean checkresponse(URL qurl)
-      throws Exception
+
+  private boolean checkresponse(URL qurl) throws Exception
   {
     jalview.bin.Cache.log.debug("Checking Response for : " + qurl);
     boolean prompt = false;
-    // see if we have already responsed to this questionnaire or get a new qid/rid pair
-    BufferedReader br = new BufferedReader(new InputStreamReader(qurl.
-        openStream()));
+    // see if we have already responsed to this questionnaire or get a new
+    // qid/rid pair
+    BufferedReader br = new BufferedReader(new InputStreamReader(
+            qurl.openStream()));
     String qresp;
-    while ( (qresp = br.readLine()) != null)
+    while ((qresp = br.readLine()) != null)
     {
       if (qresp.indexOf("NOTYET:") == 0)
       {
@@ -63,10 +88,6 @@ public class UserQuestionnaireCheck
             }
           }
         }
-        else
-        {
-          prompt = false;
-        }
       }
     }
     return prompt;
@@ -85,21 +106,22 @@ public class UserQuestionnaireCheck
       String lastq = jalview.bin.Cache.getProperty("QUESTIONNAIRE");
       if (lastq == null)
       {
-        prompt = checkresponse(new URL(url + (url.indexOf('?') > -1 ? "&" : "?") +
-                                       "checkresponse=1"));
+        prompt = checkresponse(new URL(url
+                + (url.indexOf('?') > -1 ? "&" : "?") + "checkresponse=1"));
       }
       else
       {
-        String qurl = url + (url.indexOf('?') > -1 ? "&" : "?") +
-            "checkresponse=1";
+        String qurl = url + (url.indexOf('?') > -1 ? "&" : "?")
+                + "checkresponse=1";
         // query the server with the old qid/id pair
-        String qqid = lastq.indexOf(':') > -1 ?
-            lastq.substring(0, lastq.indexOf(':')) : null;
+        String qqid = lastq.indexOf(':') > -1 ? lastq.substring(0,
+                lastq.indexOf(':')) : null;
         if (qqid != null && qqid != "null" && qqid.length() > 0)
         {
           qurl += "&qid=" + qqid;
           qid = qqid;
-          String qrid = lastq.substring(lastq.indexOf(':') + 1); // retrieve old rid
+          String qrid = lastq.substring(lastq.indexOf(':') + 1); // retrieve
+          // old rid
           if (qrid != null && !qrid.equals("null"))
           {
             rid = qrid;
@@ -116,16 +138,17 @@ public class UserQuestionnaireCheck
       }
       if (prompt)
       {
-        String qurl = url + (url.indexOf('?') > -1 ? "&" : "?") + "qid=" + qid +
-            "&rid=" + rid;
-        jalview.bin.Cache.log.info("Prompting user for questionnaire at " +
-                                   qurl);
-        int reply = JOptionPane.showInternalConfirmDialog(Desktop.desktop,
-            "There is a new Questionnaire available." +
-            "Would you like to complete it now ?\n",
-            "Jalview User Survey",
-            JOptionPane.YES_NO_OPTION,
-            JOptionPane.QUESTION_MESSAGE);
+        String qurl = url + (url.indexOf('?') > -1 ? "&" : "?") + "qid="
+                + qid + "&rid=" + rid;
+        jalview.bin.Cache.log.info("Prompting user for questionnaire at "
+                + qurl);
+        int reply = JOptionPane
+                .showInternalConfirmDialog(Desktop.desktop, MessageManager
+                        .getString("label.jalview_new_questionnaire"),
+                        MessageManager
+                                .getString("label.jalview_user_survey"),
+                        JOptionPane.YES_NO_OPTION,
+                        JOptionPane.QUESTION_MESSAGE);
 
         if (reply == JOptionPane.YES_OPTION)
         {
@@ -133,11 +156,10 @@ public class UserQuestionnaireCheck
           jalview.util.BrowserLauncher.openURL(qurl);
         }
       }
-    }
-    catch (Exception e)
+    } catch (Exception e)
     {
-      jalview.bin.Cache.log.warn("When trying to access questionnaire URL " +
-                                 url, e);
+      jalview.bin.Cache.log.warn("When trying to access questionnaire URL "
+              + url, e);
     }
   }