Merge branch 'tutorProfile' of s416084/find-my-tutor-android into develop
@ -25,7 +25,6 @@
|
|||||||
android:theme="@style/AppTheme">
|
android:theme="@style/AppTheme">
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.StartupActivity"
|
android:name=".activity.StartupActivity"
|
||||||
android:label="@string/title_activity_startup"
|
|
||||||
android:launchMode="singleInstance"
|
android:launchMode="singleInstance"
|
||||||
android:theme="@style/AppTheme.NoActionBar">
|
android:theme="@style/AppTheme.NoActionBar">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
@ -36,17 +35,14 @@
|
|||||||
</activity>
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.MapActivity"
|
android:name=".activity.MapActivity"
|
||||||
android:label="@string/map_activity_label"
|
|
||||||
android:launchMode="singleTop" />
|
android:launchMode="singleTop" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.LoginActivity"
|
android:name=".activity.LoginActivity"
|
||||||
android:excludeFromRecents="true"
|
android:excludeFromRecents="true"
|
||||||
android:label="@string/title_activity_login"
|
|
||||||
android:launchMode="singleTask"
|
android:launchMode="singleTask"
|
||||||
android:noHistory="true" />
|
android:noHistory="true" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.SettingsActivity"
|
android:name=".activity.SettingsActivity" />
|
||||||
android:label="@string/title_activity_settings" />
|
|
||||||
|
|
||||||
<service
|
<service
|
||||||
android:name=".service.BackgroundLocalizationService"
|
android:name=".service.BackgroundLocalizationService"
|
||||||
@ -54,6 +50,9 @@
|
|||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:launchMode="singleTop" />
|
android:launchMode="singleTop" />
|
||||||
|
|
||||||
|
<activity
|
||||||
|
android:name=".activity.TutorTab"
|
||||||
|
android:theme="@style/AppTheme"></activity>
|
||||||
</application>
|
</application>
|
||||||
|
|
||||||
</manifest>
|
</manifest>
|
BIN
app/src/main/ic_launcher-web.png
Normal file
After Width: | Height: | Size: 34 KiB |
@ -92,8 +92,8 @@ public abstract class BaseActivity
|
|||||||
|
|
||||||
} else if (itemName.equals(getResources().getString(R.string.navigation_item_profile))) {
|
} else if (itemName.equals(getResources().getString(R.string.navigation_item_profile))) {
|
||||||
|
|
||||||
/* launchIntent = new Intent(getApplicationContext(), ProfileActivity.class);
|
launchIntent = new Intent(getApplicationContext(), TutorTab.class);
|
||||||
startActivity(launchIntent);*/
|
startActivity(launchIntent);
|
||||||
} else if (itemName.equals(getResources().getString(R.string.navigation_item_settings))) {
|
} else if (itemName.equals(getResources().getString(R.string.navigation_item_settings))) {
|
||||||
launchIntent = new Intent(getApplicationContext(), SettingsActivity.class);
|
launchIntent = new Intent(getApplicationContext(), SettingsActivity.class);
|
||||||
startActivity(launchIntent);
|
startActivity(launchIntent);
|
||||||
|
@ -154,8 +154,9 @@ public class LoginActivity extends AppCompatActivity {
|
|||||||
|
|
||||||
private void loginProcess(String email, String password) {
|
private void loginProcess(String email, String password) {
|
||||||
ValidateUser user = new ValidateUser(email, password);
|
ValidateUser user = new ValidateUser(email, password);
|
||||||
|
LdapUser fuser = new LdapUser(email,password,"wmi","tutor","marek","nocny","szmare@wmi.pl");
|
||||||
disposable.add(ldapService.validate(user)
|
// disposable.add(ldapService.validate(user)
|
||||||
|
disposable.add(ldapService.fakeValidate(fuser)
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(this::handleResponse, this::handleError));
|
.subscribe(this::handleResponse, this::handleError));
|
||||||
|
@ -1,31 +1,163 @@
|
|||||||
package com.uam.wmi.findmytutor.activity;
|
package com.uam.wmi.findmytutor.activity;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.support.design.widget.FloatingActionButton;
|
import android.support.v7.app.AppCompatActivity;
|
||||||
import android.support.design.widget.Snackbar;
|
import android.util.Log;
|
||||||
import android.support.v7.app.AppCompatActivity;
|
import android.view.View;
|
||||||
import android.support.v7.widget.Toolbar;
|
import android.widget.Button;
|
||||||
import android.view.View;
|
import android.widget.EditText;
|
||||||
|
import android.widget.TextView;
|
||||||
import com.uam.wmi.findmytutor.R;
|
import android.widget.Toast;
|
||||||
|
|
||||||
public class TutorTab extends AppCompatActivity {
|
import com.annimon.stream.Stream;
|
||||||
|
import com.jakewharton.retrofit2.adapter.rxjava2.HttpException;
|
||||||
@Override
|
import com.uam.wmi.findmytutor.R;
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
import com.uam.wmi.findmytutor.model.DutyHourViewModel;
|
||||||
super.onCreate(savedInstanceState);
|
import com.uam.wmi.findmytutor.model.TutorTabViewModel;
|
||||||
setContentView(R.layout.activity_tutor_tab);
|
import com.uam.wmi.findmytutor.model.User;
|
||||||
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
|
import com.uam.wmi.findmytutor.network.ApiClient;
|
||||||
setSupportActionBar(toolbar);
|
import com.uam.wmi.findmytutor.service.TutorTabApi;
|
||||||
|
import com.uam.wmi.findmytutor.service.UserService;
|
||||||
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
|
import com.uam.wmi.findmytutor.utils.PrefUtils;
|
||||||
fab.setOnClickListener(new View.OnClickListener() {
|
import com.uam.wmi.findmytutor.utils.RestApiHelper;
|
||||||
@Override
|
|
||||||
public void onClick(View view) {
|
import java.util.Arrays;
|
||||||
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
|
import java.util.List;
|
||||||
.setAction("Action", null).show();
|
|
||||||
}
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||||
});
|
import io.reactivex.disposables.CompositeDisposable;
|
||||||
}
|
import io.reactivex.observers.DisposableSingleObserver;
|
||||||
|
import io.reactivex.schedulers.Schedulers;
|
||||||
}
|
import okhttp3.ResponseBody;
|
||||||
|
import retrofit2.Response;
|
||||||
|
|
||||||
|
public class TutorTab extends AppCompatActivity {
|
||||||
|
private TutorTabApi tutorTabService;
|
||||||
|
private UserService userService;
|
||||||
|
private CompositeDisposable disposable = new CompositeDisposable();
|
||||||
|
private TextView userName;
|
||||||
|
private TextView userDutyHours;
|
||||||
|
private EditText userNote;
|
||||||
|
private TextView userRoom;
|
||||||
|
private TextView userEmail;
|
||||||
|
private TextView department;
|
||||||
|
private Button saveButon;
|
||||||
|
private TutorTabViewModel newTab;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
tutorTabService = ApiClient.getClient(getApplicationContext())
|
||||||
|
.create(TutorTabApi.class);
|
||||||
|
userService = ApiClient.getClient(getApplicationContext())
|
||||||
|
.create(UserService.class);
|
||||||
|
setContentView(R.layout.content_tutor_tab);
|
||||||
|
TextView userName = findViewById(R.id.userName);
|
||||||
|
TextView userDutyHours = findViewById(R.id.userDutyHours);
|
||||||
|
EditText userNote = findViewById(R.id.userNote);
|
||||||
|
TextView userRoom = findViewById(R.id.userRoom);
|
||||||
|
TextView userEmail = findViewById(R.id.userEmail);
|
||||||
|
TextView department = findViewById(R.id.userDepartment);
|
||||||
|
Button saveButon = findViewById(R.id.saveButon);
|
||||||
|
userName.setText(String.format("%s %s", PrefUtils.getUserFirstName(getApplicationContext()), PrefUtils.getUserLastName(getApplicationContext())));
|
||||||
|
disposable.add(
|
||||||
|
tutorTabService.apiUsersTutorTabByTutorIdGet(PrefUtils.getUserId(getApplicationContext()))
|
||||||
|
.subscribeOn(Schedulers.io())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribeWith(new DisposableSingleObserver<TutorTabViewModel>() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess(TutorTabViewModel tutorTabViewModel) {
|
||||||
|
newTab = tutorTabViewModel;
|
||||||
|
List<String> dutyHoursList = Stream.of(tutorTabViewModel.getDutyHours())
|
||||||
|
.map(DutyHourViewModel::getSummary).toList();
|
||||||
|
Log.d("TUTORTAB", Arrays.toString(dutyHoursList.toArray()));
|
||||||
|
userRoom.setText(String.format("%s: %s", getString(R.string.userRoom), tutorTabViewModel.getRoom()));
|
||||||
|
userEmail.setText(String.format("%s: %s", getString(R.string.userEmail), tutorTabViewModel.getEmailTutorTab()));
|
||||||
|
if (!tutorTabViewModel.getNote().equals("")) {
|
||||||
|
userNote.setText(String.format("%s", tutorTabViewModel.getNote()));
|
||||||
|
}
|
||||||
|
userDutyHours.setText(String.format("%s: %s", getString(R.string.userDutyHoursHeader), Arrays.toString(dutyHoursList.toArray())));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(Throwable e) {
|
||||||
|
showError(e);
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
disposable.add(
|
||||||
|
|
||||||
|
userService.getUserById(PrefUtils.getUserId(getApplicationContext()))
|
||||||
|
.subscribeOn(Schedulers.io())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribeWith(new DisposableSingleObserver<User>() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess(User user) {
|
||||||
|
department.setText(user.getDepartment());
|
||||||
|
Log.d("TUTORTAB", (user.getDepartment()));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(Throwable e) {
|
||||||
|
showError(e);
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
setUpSaveListener(saveButon, userNote);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setUpSaveListener(Button button, EditText note) {
|
||||||
|
button.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View view) {
|
||||||
|
TutorTabViewModel toPost = newTab;
|
||||||
|
toPost.setNote(note.getText().toString());
|
||||||
|
putUserTab(toPost);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void putUserTab(TutorTabViewModel tutorTabViewModel) {
|
||||||
|
disposable.add(tutorTabService.apiUsersTutorTabByTutorIdPut(PrefUtils.getUserId(getApplicationContext()), tutorTabViewModel)
|
||||||
|
.subscribeOn(Schedulers.io())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe(this::handleResponse, this::handleError));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void handleResponse(TutorTabViewModel tutorTabViewModel) {
|
||||||
|
Toast.makeText(getApplicationContext(), getApplicationContext().getString(R.string.modal_feedback_thankyou), Toast.LENGTH_SHORT).show();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void handleError(Throwable error) {
|
||||||
|
if (error instanceof HttpException) {
|
||||||
|
|
||||||
|
ResponseBody responseBody = ((HttpException) error).response().errorBody();
|
||||||
|
Toast.makeText(getApplicationContext(),
|
||||||
|
RestApiHelper.getErrorMessage(responseBody), Toast.LENGTH_SHORT).show();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
Toast.makeText(getApplicationContext(),
|
||||||
|
"Network error " + error.getMessage(), Toast.LENGTH_SHORT).show();
|
||||||
|
Log.d("FEEDBACK", error.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void showError(Throwable e) {
|
||||||
|
String message;
|
||||||
|
|
||||||
|
if (e instanceof HttpException) {
|
||||||
|
ResponseBody responseBody = ((HttpException) e).response().errorBody();
|
||||||
|
message = RestApiHelper.getErrorMessage(responseBody);
|
||||||
|
} else {
|
||||||
|
message = "Network Error !";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Snackbar.make(coordinatorLayout, message, Snackbar.LENGTH_LONG)
|
||||||
|
// .show();
|
||||||
|
Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -51,7 +51,7 @@ public interface TutorTabApi {
|
|||||||
"Content-Type:application/json"
|
"Content-Type:application/json"
|
||||||
})
|
})
|
||||||
@PUT("api/users/tutorTab/{tutorId}")
|
@PUT("api/users/tutorTab/{tutorId}")
|
||||||
Observable<Void> apiUsersTutorTabByTutorIdPut(
|
Observable<TutorTabViewModel> apiUsersTutorTabByTutorIdPut(
|
||||||
@retrofit2.http.Path("tutorId") String tutorId, @retrofit2.http.Body TutorTabViewModel tutorTab
|
@retrofit2.http.Path("tutorId") String tutorId, @retrofit2.http.Body TutorTabViewModel tutorTab
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -47,7 +47,7 @@ public class ManualLocationUtils {
|
|||||||
LayoutInflater layoutInflaterAndroid = LayoutInflater.from(activityContext);
|
LayoutInflater layoutInflaterAndroid = LayoutInflater.from(activityContext);
|
||||||
View view = layoutInflaterAndroid.inflate(R.layout.location_modal, null);
|
View view = layoutInflaterAndroid.inflate(R.layout.location_modal, null);
|
||||||
AlertDialog.Builder alertDialogBuilderUserInput = new AlertDialog.Builder(activityContext);
|
AlertDialog.Builder alertDialogBuilderUserInput = new AlertDialog.Builder(activityContext);
|
||||||
alertDialogBuilderUserInput.setView(view).setPositiveButton(activityContext.getString(R.string.modal_feedback_send), null);
|
alertDialogBuilderUserInput.setView(view).setPositiveButton(activityContext.getString(R.string.modal_location_send), null);
|
||||||
final AlertDialog alertDialog = alertDialogBuilderUserInput.create();
|
final AlertDialog alertDialog = alertDialogBuilderUserInput.create();
|
||||||
|
|
||||||
EditText modalUserInput = view.findViewById(R.id.feedback_input);
|
EditText modalUserInput = view.findViewById(R.id.feedback_input);
|
||||||
@ -62,7 +62,7 @@ public class ManualLocationUtils {
|
|||||||
public void onClick(View view) {
|
public void onClick(View view) {
|
||||||
String body = modalUserInput.getText().toString();
|
String body = modalUserInput.getText().toString();
|
||||||
if (TextUtils.isEmpty(body)) {
|
if (TextUtils.isEmpty(body)) {
|
||||||
Toast.makeText(activityContext, activityContext.getString(R.string.modal_feedback_hint), Toast.LENGTH_SHORT).show();
|
Toast.makeText(activityContext, activityContext.getString(R.string.modal_location_hint), Toast.LENGTH_SHORT).show();
|
||||||
modalUserInput.requestFocus();
|
modalUserInput.requestFocus();
|
||||||
} else {
|
} else {
|
||||||
PrefUtils.putManualLocation(activityContext, latLng);
|
PrefUtils.putManualLocation(activityContext, latLng);
|
||||||
|
9
app/src/main/res/drawable/ic_info_black_24dp.xml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportHeight="24.0"
|
||||||
|
android:viewportWidth="24.0">
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zm1,15h-2v-6h2v6zm0,-8h-2V7h2v2z" />
|
||||||
|
</vector>
|
@ -0,0 +1,9 @@
|
|||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportHeight="24.0"
|
||||||
|
android:viewportWidth="24.0">
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M11.5,22c1.1,0 2,-0.9 2,-2h-4c0,1.1 0.9,2 2,2zm6.5,-6v-5.5c0,-3.07 -2.13,-5.64 -5,-6.32V3.5c0,-0.83 -0.67,-1.5 -1.5,-1.5S10,2.67 10,3.5v0.68c-2.87,0.68 -5,3.25 -5,6.32V16l-2,2v1h17v-1l-2,-2z" />
|
||||||
|
</vector>
|
9
app/src/main/res/drawable/ic_sync_black_24dp.xml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportHeight="24.0"
|
||||||
|
android:viewportWidth="24.0">
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01,-.25 1.97,-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0,-4.42,-3.58,-8,-8,-8zm0 14c-3.31 0,-6,-2.69,-6,-6 0,-1.01.25,-1.97.7,-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4,-4,-4,-4v3z" />
|
||||||
|
</vector>
|
16
app/src/main/res/drawable/logo_black.xml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
<vector android:height="24dp" android:viewportHeight="61.7"
|
||||||
|
android:viewportWidth="61.34" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M52.65,41.79A25.13,25.13 0,0 1,45.36 46.96c-1.49,0.71 -29,8.51 -40.74,11.82 -1,0.27 -1.86,0.52 -2.58,0.73 0.18,-0.73 0.39,-1.61 0.66,-2.6C5.68,45.29 12.62,17.99 13.28,16.5a24.77,24.77 0,0 1,5 -7.31A25.57,25.57 0,0 1,52.02 6.72c0.35,0.27 0.7,0.56 1.05,0.86s0.61,0.65 0.9,1A24.48,24.48 0,0 1,52.65 41.79Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M43.05,45.73"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M21.13,27.35l1,1.75 3.54,-2 1.51,2.65 -3.54,2L25.81,35.6l-3.06,1.73 -6.24,-11 7,-4 1.56,2.74Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M24.36,20.54l1.41,2.49 2.88,-1.64 -1.41,-2.48ZM26.36,24.1L31.14,32.6 32.36,27.81l-3,-5.37Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M41.36,19.96 L44.36,25.14 41.36,26.8l-2.7,-4.78c-0.56,-1 -1.21,-1.27 -2,-0.85 -0.91,0.52 -1.07,1.45 -0.46,2.53l2.57,4.54L35.91,29.9l-4.81,-8.5 2,-1.16 0.9,0.65a4.07,4.07 0,0 1,2 -2.65C38.06,17.13 40.15,17.79 41.36,19.96Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M48.48,7.5l6.55,11.57L52.86,20.29l-0.63,-0.47a4.51,4.51 0,0 1,-2 2.37,5 5,0 0,1 -7,-2 5,5 0,0 1,1.89 -7,4.58 4.58,0 0,1 2.45,-0.61l-1.91,-3.38ZM49.91,16.35a2.19,2.19 0,1 0,-0.8 3A2.16,2.16 0,0 0,49.91 16.35Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M20.42,39.69l-3,1.7 4.69,8.28 -3,1.72L14.36,43.11l-3,1.7 -1.54,-2.73 9,-5.12Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M23.58,44.03l-2.75,-4.85 2.93,-1.66 2.67,4.72a1.43,1.43 0,0 0,2.07 0.71,1.41 1.41,0 0,0 0.45,-2.13l-2.67,-4.73 2.93,-1.65 2.74,4.84c1.35,2.38 0.55,4.88 -2,6.3S24.93,46.4 23.58,44.03Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M40.02,36.15l1.45,2.56 -2,1.14a3.21,3.21 0,0 1,-4.74 -1.33l-1.82,-3.2L31.36,36.2l-0.39,-0.68 1.51,-6.21 0.6,-0.34 1.41,2.48 2.13,-1.21 1.28,2.25 -2.06,1.17L37.36,36.37a1,1 0,0 0,1.54 0.41Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M39.91,33.95a5.15,5.15 0,0 1,2.2 -7.22,5.21 5.21,0 1,1 5.13,9.05A5.16,5.16 0,0 1,39.91 33.95ZM45.75,33.15a2.18,2.18 0,1 0,-2.91 -0.86,2 2,0 0,0 2.91,0.86Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M53.83,20.43 L55.36,23.11l-1.14,0.64a1.49,1.49 0,0 0,-0.6 2.37l2.45,4.33L53.13,32.1 48.36,23.6l2,-1.11 1,0.68a3.28,3.28 0,0 1,1.79 -2.31Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M17.17,35.42l0.94,1.67 -0.91,0.52L16.36,36.06c-0.16,-0.28 -0.34,-0.36 -0.53,-0.25s-0.28,0.39 -0.09,0.73l0.82,1.45 -0.89,0.51 -0.88,-1.56c-0.15,-0.26 -0.33,-0.35 -0.53,-0.24s-0.28,0.39 -0.09,0.72l0.82,1.46 -0.91,0.52 -1.51,-2.66 0.65,-0.36 0.29,0.21a1.14,1.14 0,0 1,0.57 -0.8,1 1,0 0,1 1,0 1.23,1.23 0,0 1,0.6 -0.86A1.11,1.11 0,0 1,17.17 35.42Z"/>
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M18.69,33.26l0.3,1.75 -1.39,-1.13 -1,0.56 2.47,1.82a0.61,0.61 0,0 1,0 0.48l0.47,0.84c0.48,-0.36 0.58,-0.84 0.49,-1.71l-0.31,-3.17Z"/>
|
||||||
|
</vector>
|
@ -1,33 +1,33 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
tools:context=".activity.TutorTab">
|
tools:context=".activity.TutorTab">
|
||||||
|
|
||||||
<android.support.design.widget.AppBarLayout
|
<android.support.design.widget.AppBarLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:theme="@style/AppTheme.AppBarOverlay">
|
android:theme="@style/AppTheme.AppBarOverlay">
|
||||||
|
|
||||||
<android.support.v7.widget.Toolbar
|
<android.support.v7.widget.Toolbar
|
||||||
android:id="@+id/toolbar"
|
android:id="@+id/toolbar"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="?attr/actionBarSize"
|
android:layout_height="?attr/actionBarSize"
|
||||||
android:background="?attr/colorPrimary"
|
android:background="?attr/colorPrimary"
|
||||||
app:popupTheme="@style/AppTheme.PopupOverlay" />
|
app:popupTheme="@style/AppTheme.PopupOverlay" />
|
||||||
|
|
||||||
</android.support.design.widget.AppBarLayout>
|
</android.support.design.widget.AppBarLayout>
|
||||||
|
|
||||||
<include layout="@layout/content_tutor_tab" />
|
<include layout="@layout/content_tutor_tab" />
|
||||||
|
|
||||||
<android.support.design.widget.FloatingActionButton
|
<android.support.design.widget.FloatingActionButton
|
||||||
android:id="@+id/fab"
|
android:id="@+id/fab"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="bottom|end"
|
android:layout_gravity="bottom|end"
|
||||||
android:layout_margin="@dimen/fab_margin"
|
android:layout_margin="@dimen/fab_margin"
|
||||||
app:srcCompat="@android:drawable/ic_dialog_email" />
|
app:srcCompat="@android:drawable/ic_dialog_email" />
|
||||||
|
|
||||||
</android.support.design.widget.CoordinatorLayout>
|
</android.support.design.widget.CoordinatorLayout>
|
@ -1,11 +1,84 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
android:layout_width="match_parent"
|
||||||
android:layout_width="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:orientation="vertical"
|
||||||
app:layout_behavior="@string/appbar_scrolling_view_behavior"
|
android:paddingLeft="@dimen/activity_margin"
|
||||||
tools:context=".activity.TutorTab"
|
android:paddingRight="@dimen/activity_margin"
|
||||||
tools:showIn="@layout/activity_tutor_tab">
|
android:paddingTop="@dimen/activity_margin">
|
||||||
|
|
||||||
</android.support.constraint.ConstraintLayout>
|
<TextView android:id="@+id/userName"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginBottom="@dimen/dimen_10"
|
||||||
|
android:fontFamily="sans-serif-medium"
|
||||||
|
android:lineSpacingExtra="8sp"
|
||||||
|
android:textColor="@color/colorAccent"
|
||||||
|
android:textSize="@dimen/lbl_new_note_title"
|
||||||
|
android:textStyle="normal" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/userDepartment"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:lineSpacingExtra="8sp"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:textColor="@color/note_list_text"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/userRoom"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:lineSpacingExtra="8sp"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:textColor="@color/note_list_text"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/userEmail"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:lineSpacingExtra="8sp"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:textColor="@color/note_list_text" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/userDutyHours"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:lineSpacingExtra="8sp"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:textColor="@color/note_list_text"
|
||||||
|
tools:text="@string/dutyHours" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/userNoteTitle"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingTop="0dp"
|
||||||
|
android:paddingBottom="0dp"
|
||||||
|
android:paddingStart="@dimen/activity_margin"
|
||||||
|
android:textColor="@color/note_list_text" />
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/userNote"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
android:lineSpacingExtra="8sp"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:textColor="@color/note_list_text"
|
||||||
|
android:hint="@string/tutorTabHint"
|
||||||
|
android:inputType="textMultiLine"
|
||||||
|
android:maxLength="1000"
|
||||||
|
android:maxLines="7"
|
||||||
|
android:requiresFadingEdge="vertical"
|
||||||
|
android:scrollbars="vertical"/>
|
||||||
|
|
||||||
|
<Button
|
||||||
|
android:id="@+id/saveButon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/saveButton" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<background android:drawable="@drawable/ic_launcher_background" />
|
<background android:drawable="@color/ic_launcher_background"/>
|
||||||
<foreground android:drawable="@drawable/ic_launcher_foreground" />
|
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||||
</adaptive-icon>
|
</adaptive-icon>
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<background android:drawable="@drawable/ic_launcher_background" />
|
<background android:drawable="@color/ic_launcher_background"/>
|
||||||
<foreground android:drawable="@drawable/ic_launcher_foreground" />
|
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||||
</adaptive-icon>
|
</adaptive-icon>
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 2.9 KiB |
BIN
app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 1.8 KiB |
BIN
app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.1 KiB |
BIN
app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png
Normal file
After Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 6.5 KiB |
BIN
app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png
Normal file
After Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 9.0 KiB After Width: | Height: | Size: 9.1 KiB |
BIN
app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png
Normal file
After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 16 KiB |
@ -144,6 +144,12 @@
|
|||||||
<string name="title_feedback_report">FEEDBACK</string>
|
<string name="title_feedback_report">FEEDBACK</string>
|
||||||
<string name="modal_feedback_send">WYŚLIJ</string>
|
<string name="modal_feedback_send">WYŚLIJ</string>
|
||||||
<string name="modal_feedback_thankyou">Dziękujemy za przesłanie feedbacku.</string>
|
<string name="modal_feedback_thankyou">Dziękujemy za przesłanie feedbacku.</string>
|
||||||
|
<string name="remove_manual_location">Usuń manualną lokację</string>
|
||||||
|
<string name="title_activity_tutor_tab">Profil</string>
|
||||||
|
<string name="saveButton">Zapisz</string>
|
||||||
|
<string name="tutorTabHint">Tutaj możesz dodać swoją notatkę.\\nBędzie widoczna dla innych użytkowników.</string>
|
||||||
|
<string name="modal_location_send">WYŚLIJ</string>
|
||||||
|
<string name="modal_location_hint">Proszę nazwać wybraną lokację.</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
||||||
|
|
||||||
|
4
app/src/main/res/values/ic_launcher_background.xml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<color name="ic_launcher_background">#A62613</color>
|
||||||
|
</resources>
|
@ -82,6 +82,9 @@
|
|||||||
|
|
||||||
|
|
||||||
<string name="settings_description">Descrition</string>
|
<string name="settings_description">Descrition</string>
|
||||||
|
<string name="saveButton">Save</string>
|
||||||
|
<string name="tutorTabHint">Here you can add your note.\nIt will be visible to the other users.</string>
|
||||||
|
|
||||||
<string name="key_description">key_description</string>
|
<string name="key_description">key_description</string>
|
||||||
|
|
||||||
|
|
||||||
@ -117,7 +120,9 @@
|
|||||||
<string name="title_version">Version</string>
|
<string name="title_version">Version</string>
|
||||||
<string name="choose_email_client">Choose email client</string>
|
<string name="choose_email_client">Choose email client</string>
|
||||||
<string name="title_activity_settings2">Settings</string>
|
<string name="title_activity_settings2">Settings</string>
|
||||||
|
<string name="modal_location_send">SEND</string>
|
||||||
|
<string name="modal_location_hint">Please name choosen location.</string>
|
||||||
|
modal_feedback_send
|
||||||
<!-- Strings related to Settings -->
|
<!-- Strings related to Settings -->
|
||||||
|
|
||||||
<!-- Example General settings -->
|
<!-- Example General settings -->
|
||||||
@ -213,6 +218,7 @@
|
|||||||
<string name="map_activity_label" translatable="false">MapActivity</string>
|
<string name="map_activity_label" translatable="false">MapActivity</string>
|
||||||
<string name="nav_profile">User profile</string>
|
<string name="nav_profile">User profile</string>
|
||||||
<string name="remove_manual_location">Remove Manual location</string>
|
<string name="remove_manual_location">Remove Manual location</string>
|
||||||
|
<string name="title_activity_tutor_tab">TutorTab</string>
|
||||||
|
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|