Part of fix for bug 4997380: Some error types unknown to SslError

Added the new error codes to be displayed with error messages.

Change-Id: I06b9bd6b2d6ffb95097228a1843dcda77b85a3e7
diff --git a/res/values/strings.xml b/res/values/strings.xml
index ee3ce95..f4086ea 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -90,7 +90,13 @@
     <string name="ssl_expired">This certificate has expired.</string>
     <!-- Message in an SSL Error dialog -->
     <string name="ssl_not_yet_valid">This certificate is not valid yet.</string>
-    
+    <!-- Message in an SSL Error dialog -->
+    <string name="ssl_date_invalid">This certificate has an invalid date.</string>
+    <!-- Message in an SSL Error dialog -->
+    <string name="ssl_invalid">This certificate is invalid.</string>
+    <!-- Message in an SSL Error dialog -->
+    <string name="ssl_unknown">Unknown certificate error.</string>
+
     <!-- Toast informing the user that loading has stopped for the current page. -->
     <string name="stopping">Stopping\u2026</string>
     <!-- Menu item to stop the current page from loading. -->
diff --git a/src/com/android/browser/PageDialogsHandler.java b/src/com/android/browser/PageDialogsHandler.java
index 015a9bb..3f64758 100644
--- a/src/com/android/browser/PageDialogsHandler.java
+++ b/src/com/android/browser/PageDialogsHandler.java
@@ -306,32 +306,23 @@
         final LinearLayout placeholder =
                 (LinearLayout)certificateView.findViewById(com.android.internal.R.id.placeholder);
 
+        LinearLayout ll = (LinearLayout)factory.inflate(R.layout.ssl_warning, placeholder);
+        TextView textView = (TextView)ll.findViewById(R.id.warning);
+
         if (error.hasError(SslError.SSL_UNTRUSTED)) {
-            LinearLayout ll = (LinearLayout)factory
-                .inflate(R.layout.ssl_warning, placeholder);
-            ((TextView)ll.findViewById(R.id.warning))
-                .setText(R.string.ssl_untrusted);
-        }
-
-        if (error.hasError(SslError.SSL_IDMISMATCH)) {
-            LinearLayout ll = (LinearLayout)factory
-                .inflate(R.layout.ssl_warning, placeholder);
-            ((TextView)ll.findViewById(R.id.warning))
-                .setText(R.string.ssl_mismatch);
-        }
-
-        if (error.hasError(SslError.SSL_EXPIRED)) {
-            LinearLayout ll = (LinearLayout)factory
-                .inflate(R.layout.ssl_warning, placeholder);
-            ((TextView)ll.findViewById(R.id.warning))
-                .setText(R.string.ssl_expired);
-        }
-
-        if (error.hasError(SslError.SSL_NOTYETVALID)) {
-            LinearLayout ll = (LinearLayout)factory
-                .inflate(R.layout.ssl_warning, placeholder);
-            ((TextView)ll.findViewById(R.id.warning))
-                .setText(R.string.ssl_not_yet_valid);
+            textView.setText(R.string.ssl_untrusted);
+        } else if (error.hasError(SslError.SSL_IDMISMATCH)) {
+            textView.setText(R.string.ssl_mismatch);
+        } else if (error.hasError(SslError.SSL_EXPIRED)) {
+            textView.setText(R.string.ssl_expired);
+        } else if (error.hasError(SslError.SSL_NOTYETVALID)) {
+            textView.setText(R.string.ssl_not_yet_valid);
+        } else if (error.hasError(SslError.SSL_DATE_INVALID)) {
+            textView.setText(R.string.ssl_date_invalid);
+        } else if (error.hasError(SslError.SSL_INVALID)) {
+            textView.setText(R.string.ssl_invalid);
+        } else {
+            textView.setText(R.string.ssl_unknown);
         }
 
         mSSLCertificateOnErrorHandler = handler;