Skip to content
Snippets Groups Projects
Commit 28b1c52e authored by jocke's avatar jocke
Browse files

FIXA PWVALIDATOR I MAINACTIVITY

parent 74143eb3
No related branches found
No related tags found
No related merge requests found
package com.example.project; package com.example.project;
import android.content.Context; import android.content.Context;
import android.graphics.Canvas; import android.graphics.Color;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
public class Field extends LinearLayout{ public class Field extends LinearLayout{
private View view; private View view;
private String label; private String label;
private Context context; private TextView textView;
private EditText editText;
private MainActivity mainActivity;
public DataManip getDataManip() { public DataManip getDataManip() {
return dataManip; return dataManip;
...@@ -58,7 +52,7 @@ public class Field extends LinearLayout{ ...@@ -58,7 +52,7 @@ public class Field extends LinearLayout{
*/ */
public void init(){ public void init(){
this.setOrientation(LinearLayout.VERTICAL); this.setOrientation(LinearLayout.VERTICAL);
final TextView textView = new TextView(getContext()); textView = new TextView(getContext());
textView.setText(label); textView.setText(label);
textView.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); textView.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
view.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); view.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
...@@ -67,4 +61,15 @@ public class Field extends LinearLayout{ ...@@ -67,4 +61,15 @@ public class Field extends LinearLayout{
} }
public View getView() {
return view;
}
public void setView(View view) {
this.view = view;
}
public void notValid(){
this.textView.setTextColor(Color.RED);
}
} }
...@@ -18,11 +18,9 @@ public class MainActivity extends AppCompatActivity{ ...@@ -18,11 +18,9 @@ public class MainActivity extends AppCompatActivity{
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); setContentView(R.layout.activity_main);
//final PWStrengthMeter pw = findViewById(R.id.pwval);
//pw.setDataManip(new PasswordValidator());
myForm = findViewById(R.id.myForm); myForm = findViewById(R.id.myForm);
defaultForm(); defaultForm();
Button button = findViewById(R.id.button); Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() { button.setOnClickListener(new View.OnClickListener() {
@Override @Override
...@@ -34,21 +32,25 @@ public class MainActivity extends AppCompatActivity{ ...@@ -34,21 +32,25 @@ public class MainActivity extends AppCompatActivity{
/** /**
* Test * Test form
* Creates fields for username, email, password and checkbox.
*/ */
public void defaultForm(){ public void defaultForm(){
final View usernameV = new EditText(this); final View usernameV = new EditText(this);
Field name = new Field(this, "Username", usernameV, new DataManip() { final Field name = new Field(this, "Username", usernameV, new DataManip() {
@Override @Override
public boolean validate(View v) { public boolean validate(View v) {
return false; if (((EditText)v).getText().length() > 6)
return true;
else {
return false;
}
} }
@Override @Override
public String getValue(View v) { public String getValue(View v) {
return ((EditText) usernameV).getText().toString(); return ((EditText) usernameV).getText().toString();
} }
}); });
...@@ -60,7 +62,8 @@ public class MainActivity extends AppCompatActivity{ ...@@ -60,7 +62,8 @@ public class MainActivity extends AppCompatActivity{
final Field password = new Field(this, "Password", pwStrengthMeter, new DataManip() { final Field password = new Field(this, "Password", pwStrengthMeter, new DataManip() {
@Override @Override
public boolean validate(View v) { public boolean validate(View v) {
return pwStrengthMeter.isValid();
return ((PWStrengthMeter)v).isValid(); // FUNKAR EJ, FIXAAAAA
} }
@Override @Override
public String getValue(View vv) { public String getValue(View vv) {
...@@ -76,12 +79,12 @@ public class MainActivity extends AppCompatActivity{ ...@@ -76,12 +79,12 @@ public class MainActivity extends AppCompatActivity{
Field email = new Field(this, "Email", emailV, new DataManip() { Field email = new Field(this, "Email", emailV, new DataManip() {
@Override @Override
public boolean validate(View v) { public boolean validate(View v) {
//insert validateEmail();
return true;
return false;
} }
@Override @Override
public String getValue(View v) { public String getValue(View v) {
return ((EditText) emailV).getText().toString(); return ((EditText) emailV).getText().toString();
} }
}); });
...@@ -92,6 +95,7 @@ public class MainActivity extends AppCompatActivity{ ...@@ -92,6 +95,7 @@ public class MainActivity extends AppCompatActivity{
Field checkBox = new Field(this, "Terms and Conditions", checkBoxV, new DataManip() { Field checkBox = new Field(this, "Terms and Conditions", checkBoxV, new DataManip() {
@Override @Override
public boolean validate(View v) { public boolean validate(View v) {
//insert isChecked();
return true; return true;
} }
@Override @Override
......
...@@ -59,19 +59,22 @@ public class MyForm extends LinearLayout { ...@@ -59,19 +59,22 @@ public class MyForm extends LinearLayout {
public List<String> getData(){ public List<String> getData(){
List<String> s = new ArrayList<String>(); List<String> s = new ArrayList<String>();
for(Field f : list){ for(Field f : list){
s.add(f.getDataManip().getValue(field)); if (f.getDataManip().validate(f.getView()))
s.add(f.getDataManip().getValue(f.getView()));
else
f.notValid();
s.add(null);
} }
System.out.println(s); System.out.println(s);
return s; return s;
} }
/** /**
* Lets the user add logic to a certain field. * Lets the user add logic to a certain field.
* @param field Field that should be modified. * @param field Field that should be modified.
*/ */
public void addLogic(Field field){ public void addLogic(Field field){
} }
} }
...@@ -18,7 +18,6 @@ public class PWStrengthMeter extends LinearLayout implements PasswordValidatorLi ...@@ -18,7 +18,6 @@ public class PWStrengthMeter extends LinearLayout implements PasswordValidatorLi
private EditText input; private EditText input;
private TextView output; private TextView output;
private String pw;
private int grade; private int grade;
private MyGUI myGUI; private MyGUI myGUI;
private PasswordValidator passwordValidator; private PasswordValidator passwordValidator;
...@@ -91,9 +90,9 @@ public class PWStrengthMeter extends LinearLayout implements PasswordValidatorLi ...@@ -91,9 +90,9 @@ public class PWStrengthMeter extends LinearLayout implements PasswordValidatorLi
*/ */
@Override @Override
public boolean isValid() { public boolean isValid() {
if (grade >= 2) if (grade >= 2) {
return true; return true;
else return false; }
else {return false;}
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment