summaryrefslogtreecommitdiff
path: root/app/src/production/java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/production/java')
-rw-r--r--app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java92
1 files changed, 92 insertions, 0 deletions
diff --git a/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java b/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java
new file mode 100644
index 00000000..8c7dcbf5
--- /dev/null
+++ b/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java
@@ -0,0 +1,92 @@
+package se.leap.bitmaskclient;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.design.widget.FloatingActionButton;
+import android.support.design.widget.Snackbar;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
+import android.util.Log;
+import android.view.View;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.Toast;
+
+public class AddProviderActivity extends ConfigWizardBaseActivity {
+
+ private EditText editText;
+ final public static String TAG = "AddProviderActivity";
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ setContentView(R.layout.a_add_provider);
+ editText = findViewById(R.id.textUri);
+ if (this.getIntent().getExtras() != null) {
+ editText.setText(this.getIntent().getExtras().getString("invalid_url"));
+ }
+ final Button saveButton = findViewById(R.id.button_save);
+ saveButton.setOnClickListener(new View.OnClickListener() {
+ public void onClick(View v) {
+ Log.d(TAG, "On Click when save works");
+ saveProvider();
+ }
+ });
+
+ final Button cancelButton = findViewById(R.id.button_cancel);
+ cancelButton.setOnClickListener(new View.OnClickListener() {
+ public void onClick(View v) {
+ finish();
+ //ToDo: Implement this and set testNewURL in ProviderListBaseActivty false!!
+ /* Intent intent= new Intent();
+ intent.putExtra("new_url", entered_url);
+ setResult(RESULT_NOT_OK, intent);
+ finish();*/
+ }
+ });
+ setUpInitialUI();
+ }
+
+ private void setUpInitialUI() {
+ //ToDo: find out if needed:
+ // setContentView(R.layout.a_provider_list);
+ setProviderHeaderText(R.string.add_provider);
+ hideProgressBar();
+ }
+
+
+ private void saveProvider() {
+ String entered_url = editText.getText().toString().trim();
+ if (!entered_url.startsWith("https://")) {
+ if (entered_url.startsWith("http://")) {
+ entered_url = entered_url.substring("http://".length());
+ }
+ entered_url = "https://".concat(entered_url);
+ }
+ Log.d(TAG, "Behind https addition");
+ if (validURL(entered_url)) {
+ Log.d(TAG, "URL seems fine");
+ Intent intent = this.getIntent();
+ intent.putExtra("new_url", entered_url);
+ setResult(RESULT_OK, intent);
+ finish();
+ } else {
+ Log.d(TAG, "Bad URL.");
+ editText.setText("");
+ Toast.makeText(this.getApplicationContext(), R.string.not_valid_url_entered, Toast.LENGTH_LONG).show();
+ }
+ }
+
+ /**
+ * Checks if the entered url is valid or not.
+ *
+ * @param enteredUrl
+ * @return true if it's not empty nor contains only the protocol.
+ */
+ boolean validURL(String enteredUrl) {
+ return android.util.Patterns.WEB_URL.matcher(enteredUrl).matches();
+ }
+
+
+}