--- /dev/null
+package eu.alefzero.owncloud.ui.activity;\r
+\r
+import java.net.URI;\r
+import java.net.URISyntaxException;\r
+\r
+import eu.alefzero.owncloud.authenticator.AccountAuthenticatorService;\r
+\r
+import android.accounts.Account;\r
+import android.accounts.AccountAuthenticatorActivity;\r
+import android.accounts.AccountManager;\r
+import android.app.Activity;\r
+import android.content.Intent;\r
+import android.os.Bundle;\r
+import android.util.Log;\r
+import android.view.View;\r
+import android.view.View.OnClickListener;\r
+import android.widget.Button;\r
+import android.widget.EditText;\r
+import android.widget.Toast;\r
+\r
+public class PreferencesNewSession extends AccountAuthenticatorActivity implements OnClickListener {\r
+ private Intent mReturnData;\r
+ private final String TAG = "OwnCloudPreferencesNewSession";\r
+ @Override\r
+ public void onCreate(Bundle savedInstanceState){\r
+ super.onCreate(savedInstanceState);\r
+ //setContentView(R.layout.add_new_session);\r
+ /*\r
+ EditText et;// = (EditText) findViewById(R.id.newSession_sessionName);\r
+ \r
+ et = (EditText) findViewById(R.id.newSession_URL);\r
+ if (getIntent().hasExtra("sessionURL")) {\r
+ try {\r
+ URI uri = new URI(getIntent().getStringExtra("sessionURL"));\r
+ String url = uri.getHost();\r
+ if (uri.getPort() != -1) {\r
+ url += ":" + String.valueOf(uri.getPort());\r
+ }\r
+ if (uri.getPath() != null) {\r
+ url += uri.getPath();\r
+ } else {\r
+ url += "/";\r
+ }\r
+ et.setText(url);\r
+ et = (EditText) findViewById(R.id.newSession_username);\r
+ if (uri.getAuthority() != null) {\r
+ if (uri.getUserInfo().indexOf(':') != -1) {\r
+ et.setText(uri.getUserInfo().substring(0, uri.getUserInfo().indexOf(':')));\r
+ et = (EditText) findViewById(R.id.newSession_password);\r
+ et.setText(uri.getUserInfo().substring(uri.getUserInfo().indexOf(':')+1));\r
+ } else {\r
+ et.setText(uri.getUserInfo());\r
+ }\r
+ }\r
+ \r
+ } catch (URISyntaxException e) {\r
+ Log.e(TAG, "Incorrect URI syntax " + e.getLocalizedMessage());\r
+ }\r
+ }\r
+ \r
+ mReturnData = new Intent();\r
+ setResult(Activity.RESULT_OK, mReturnData);\r
+ ((Button) findViewById(R.id.button1)).setOnClickListener(this);\r
+ ((Button) findViewById(R.id.button2)).setOnClickListener(this);*/\r
+ }\r
+ \r
+ @Override\r
+ protected void onResume() {\r
+ super.onResume();\r
+ }\r
+\r
+ public void onClick(View v) {\r
+ /* switch (v.getId()) {\r
+ case R.id.button1:\r
+ Intent intent = new Intent();\r
+ if (getIntent().hasExtra("sessionId")) {\r
+ intent.putExtra("sessionId", getIntent().getIntExtra("sessionId", -1));\r
+ }\r
+ //String sessionName = ((EditText) findViewById(R.id.newSession_sessionName)).getText().toString();\r
+ // if (sessionName.trim().equals("") || !isNameValid(sessionName)) {\r
+ // Toast.makeText(this, R.string.new_session_session_name_error, Toast.LENGTH_LONG).show();\r
+ // break;\r
+ // }\r
+ URI uri = prepareURI();\r
+ if (uri != null) {\r
+ //intent.putExtra("sessionName", sessionName);\r
+ intent.putExtra("sessionURL", uri.toString());\r
+ setResult(Activity.RESULT_OK, intent);\r
+ AccountManager accMgr = AccountManager.get(this);\r
+ Account a = new Account("OwnCloud", AccountAuthenticatorService.ACCOUNT_TYPE);\r
+ accMgr.addAccountExplicitly(a, "asd", null);\r
+ finish();\r
+ }\r
+ break;\r
+ case R.id.button2:\r
+ setResult(Activity.RESULT_CANCELED);\r
+ finish();\r
+ break;\r
+ }*/\r
+ }\r
+ \r
+ private URI prepareURI() {\r
+ URI uri = null;\r
+ /* String url = "";\r
+ try {\r
+ String username = ((EditText) findViewById(R.id.newSession_username)).getText().toString().trim();\r
+ String password = ((EditText) findViewById(R.id.newSession_password)).getText().toString().trim();\r
+ String hostname = ((EditText) findViewById(R.id.newSession_URL)).getText().toString().trim();\r
+ String scheme;\r
+ if (hostname.matches("[A-Za-z]://")) {\r
+ scheme = hostname.substring(0, hostname.indexOf("://")+3);\r
+ hostname = hostname.substring(hostname.indexOf("://")+3);\r
+ } else {\r
+ scheme = "http://";\r
+ }\r
+ if (!username.equals("")) {\r
+ if (!password.equals("")) {\r
+ username += ":" + password + "@";\r
+ } else {\r
+ username += "@";\r
+ }\r
+ }\r
+ url = scheme + username + hostname;\r
+ Log.i(TAG, url);\r
+ uri = new URI(url);\r
+ } catch (URISyntaxException e) {\r
+ Log.e(TAG, "Incorrect URI syntax " + e.getLocalizedMessage());\r
+ Toast.makeText(this, R.string.new_session_uri_error, Toast.LENGTH_LONG).show();\r
+ }\r
+ */return uri;\r
+ }\r
+ \r
+ private boolean isNameValid(String string) {\r
+ return string.matches("[A-Za-z0-9 _-]*");\r
+ }\r
+ \r
+ @Override\r
+ public void onBackPressed() {\r
+ setResult(Activity.RESULT_CANCELED);\r
+ super.onBackPressed();\r
+ }\r
+ \r
+}\r