Fix #262
This commit is contained in:
parent
0126888e10
commit
66ac1feee5
|
@ -59,7 +59,7 @@ public class Rollcall extends MenuExpandableListActivity implements
|
|||
/**
|
||||
* ListView of events
|
||||
*/
|
||||
private static ListView lvEvents;
|
||||
private ListView lvEvents;
|
||||
/**
|
||||
* Adapter for ListView of events
|
||||
*/
|
||||
|
@ -133,14 +133,14 @@ public class Rollcall extends MenuExpandableListActivity implements
|
|||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.list_items_pulltorefresh);
|
||||
|
||||
refreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_container_list);
|
||||
emptyEventsTextView = (TextView) findViewById(R.id.list_item_title);
|
||||
refreshLayout = findViewById(R.id.swipe_container_list);
|
||||
emptyEventsTextView = findViewById(R.id.list_item_title);
|
||||
|
||||
View mProgressScreenView = findViewById(R.id.progress_screen);
|
||||
mProgressScreen = new ProgressScreen(mProgressScreenView, refreshLayout,
|
||||
getString(R.string.loadingMsg), this);
|
||||
|
||||
lvEvents = (ListView) findViewById(R.id.list_pulltorefresh);
|
||||
lvEvents = findViewById(R.id.list_pulltorefresh);
|
||||
|
||||
lvEvents.setOnItemClickListener(clickListener);
|
||||
lvEvents.setOnScrollListener(new AbsListView.OnScrollListener() {
|
||||
|
@ -191,6 +191,7 @@ public class Rollcall extends MenuExpandableListActivity implements
|
|||
refreshAdapter();
|
||||
break;
|
||||
}
|
||||
super.onActivityResult(requestCode, resultCode, intent);
|
||||
}
|
||||
|
||||
private void refreshAdapter() {
|
||||
|
@ -232,7 +233,7 @@ public class Rollcall extends MenuExpandableListActivity implements
|
|||
|
||||
if ((lvEvents != null) && (lvEvents.getChildCount() > 0)) {
|
||||
while(!hasPendingEvents && (i<lvEvents.getChildCount())) {
|
||||
sendingStateTextView = (TextView) lvEvents.getChildAt(i).findViewById(R.id.sendingStateTextView);
|
||||
sendingStateTextView = lvEvents.getChildAt(i).findViewById(R.id.sendingStateTextView);
|
||||
hasPendingEvents = sendingStateTextView.getText().equals(getString(R.string.sendingStatePending));
|
||||
i++;
|
||||
}
|
||||
|
|
|
@ -74,7 +74,7 @@ public class UsersActivity extends MenuExpandableListActivity implements
|
|||
/**
|
||||
* ListView of users
|
||||
*/
|
||||
private static ListView lvUsers;
|
||||
private ListView lvUsers;
|
||||
/**
|
||||
* Adapter for ListView of users
|
||||
*/
|
||||
|
@ -105,6 +105,16 @@ public class UsersActivity extends MenuExpandableListActivity implements
|
|||
*/
|
||||
private IntentIntegrator integrator;
|
||||
|
||||
/**
|
||||
* Button for send attendances to SWAD
|
||||
*/
|
||||
private MenuItem mSendUsersMenuItem;
|
||||
|
||||
/**
|
||||
* Button for clear all users for an event
|
||||
*/
|
||||
private MenuItem mCleanUsersMenuItem;
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see es.ugr.swad.swadroid.MenuExpandableListActivity#onCreate(android.os.Bundle)
|
||||
*/
|
||||
|
@ -113,14 +123,14 @@ public class UsersActivity extends MenuExpandableListActivity implements
|
|||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.list_items_pulltorefresh);
|
||||
|
||||
refreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_container_list);
|
||||
emptyUsersTextView = (TextView) findViewById(R.id.list_item_title);
|
||||
refreshLayout = findViewById(R.id.swipe_container_list);
|
||||
emptyUsersTextView = findViewById(R.id.list_item_title);
|
||||
|
||||
View mProgressScreenView = findViewById(R.id.progress_screen);
|
||||
mProgressScreen = new ProgressScreen(mProgressScreenView, refreshLayout,
|
||||
getString(R.string.loadingMsg), this);
|
||||
|
||||
lvUsers = (ListView) findViewById(R.id.list_pulltorefresh);
|
||||
lvUsers = findViewById(R.id.list_pulltorefresh);
|
||||
|
||||
lvUsers.setOnScrollListener(new AbsListView.OnScrollListener() {
|
||||
@Override
|
||||
|
@ -165,6 +175,9 @@ public class UsersActivity extends MenuExpandableListActivity implements
|
|||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
|
||||
refreshAdapter();
|
||||
setActionMenuItemsEnabled(true);
|
||||
|
||||
super.onActivityResult(requestCode, resultCode, intent);
|
||||
}
|
||||
|
||||
private void refreshAdapter() {
|
||||
|
@ -243,39 +256,50 @@ public class UsersActivity extends MenuExpandableListActivity implements
|
|||
*/
|
||||
@Override
|
||||
public void onRefresh() {
|
||||
setActionMenuItemsEnabled(false);
|
||||
showSwipeProgress();
|
||||
|
||||
refreshUsers();
|
||||
|
||||
hideSwipeProgress();
|
||||
setActionMenuItemsEnabled(true);
|
||||
}
|
||||
|
||||
private String getUsersCodes() {
|
||||
String usersCodes = "";
|
||||
StringBuilder usersCodes = new StringBuilder();
|
||||
List<UserAttendance> usersList = dbHelper.getUsersEvent(eventCode);
|
||||
|
||||
//Concatenate the user code of all users checked as present and separate them with commas
|
||||
for(UserAttendance user : usersList) {
|
||||
if(user.isUserPresent()) {
|
||||
usersCodes += user.getId() + ",";
|
||||
usersCodes.append(user.getId()).append(",");
|
||||
}
|
||||
}
|
||||
|
||||
//Remove final comma
|
||||
if(!usersCodes.isEmpty()) {
|
||||
usersCodes = usersCodes.substring(0, usersCodes.length()-1);
|
||||
if(usersCodes.length() > 0) {
|
||||
usersCodes = new StringBuilder(usersCodes.substring(0, usersCodes.length() - 1));
|
||||
}
|
||||
|
||||
return usersCodes;
|
||||
return usersCodes.toString();
|
||||
}
|
||||
|
||||
private void scanQRCode() {
|
||||
integrator.initiateScan();
|
||||
}
|
||||
|
||||
private void setActionMenuItemsEnabled(boolean enabled) {
|
||||
mSendUsersMenuItem.setEnabled(enabled);
|
||||
mCleanUsersMenuItem.setEnabled(enabled);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCreateOptionsMenu(Menu menu) {
|
||||
getMenuInflater().inflate(R.menu.rollcall_activity_actions, menu);
|
||||
|
||||
mSendUsersMenuItem = menu.findItem(R.id.action_sendMsg);
|
||||
mCleanUsersMenuItem = menu.findItem(R.id.action_cleanUsers);
|
||||
|
||||
return super.onCreateOptionsMenu(menu);
|
||||
}
|
||||
|
||||
|
@ -302,6 +326,8 @@ public class UsersActivity extends MenuExpandableListActivity implements
|
|||
return true;
|
||||
|
||||
case R.id.action_sendMsg:
|
||||
setActionMenuItemsEnabled(false);
|
||||
|
||||
String usersCodes = getUsersCodes();
|
||||
|
||||
Intent activity = new Intent(getApplicationContext(),
|
||||
|
@ -318,6 +344,8 @@ public class UsersActivity extends MenuExpandableListActivity implements
|
|||
return true;
|
||||
|
||||
case R.id.action_cleanUsers:
|
||||
setActionMenuItemsEnabled(false);
|
||||
|
||||
AlertDialog cleanDBDialog = DialogFactory.createWarningDialog(this,
|
||||
-1,
|
||||
R.string.areYouSure,
|
||||
|
@ -358,7 +386,7 @@ public class UsersActivity extends MenuExpandableListActivity implements
|
|||
}
|
||||
|
||||
@Override
|
||||
public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[],
|
||||
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
|
||||
@NonNull int[] grantResults) {
|
||||
switch (requestCode) {
|
||||
case Constants.PERMISSIONS_REQUEST_CAMERA: {
|
||||
|
|
|
@ -127,10 +127,10 @@ public class UsersCursorAdapter extends CursorAdapter {
|
|||
final ViewHolder holder = (ViewHolder) view.getTag();
|
||||
view.setTag(holder);
|
||||
|
||||
holder.image = (ImageView) view.findViewById(R.id.imageView1);
|
||||
holder.text1 = (TextView) view.findViewById(R.id.TextView1);
|
||||
holder.text2 = (TextView) view.findViewById(R.id.TextView2);
|
||||
holder.checkbox = (CheckBox) view.findViewById(R.id.check);
|
||||
holder.image = view.findViewById(R.id.imageView1);
|
||||
holder.text1 = view.findViewById(R.id.TextView1);
|
||||
holder.text2 = view.findViewById(R.id.TextView2);
|
||||
holder.checkbox = view.findViewById(R.id.check);
|
||||
|
||||
holder.checkbox.setChecked(present);
|
||||
holder.checkbox.setOnClickListener(new View.OnClickListener() {
|
||||
|
@ -157,7 +157,7 @@ public class UsersCursorAdapter extends CursorAdapter {
|
|||
ImageFactory.displayImage(loader, crypto.decrypt(userPhoto), holder.image);
|
||||
}
|
||||
|
||||
holder.text1.setText(userSurname1 + " " + userSurname2 + ", " + userFirstname);
|
||||
holder.text1.setText(String.format("%s %s, %s", userSurname1, userSurname2, userFirstname));
|
||||
holder.text2.setText(userID);
|
||||
}
|
||||
|
||||
|
@ -166,10 +166,10 @@ public class UsersCursorAdapter extends CursorAdapter {
|
|||
View view = inflater.inflate(R.layout.users_list_item, parent, false);
|
||||
ViewHolder holder = new ViewHolder();
|
||||
|
||||
holder.image = (ImageView) view.findViewById(R.id.imageView1);
|
||||
holder.text1 = (TextView) view.findViewById(R.id.TextView1);
|
||||
holder.text2 = (TextView) view.findViewById(R.id.TextView2);
|
||||
holder.checkbox = (CheckBox) view.findViewById(R.id.check);
|
||||
holder.image = view.findViewById(R.id.imageView1);
|
||||
holder.text1 = view.findViewById(R.id.TextView1);
|
||||
holder.text2 = view.findViewById(R.id.TextView2);
|
||||
holder.checkbox = view.findViewById(R.id.check);
|
||||
view.setTag(holder);
|
||||
|
||||
return view;
|
||||
|
|
|
@ -153,7 +153,7 @@ public class UsersDownload extends Module {
|
|||
if (numUsers == 0) {
|
||||
Toast.makeText(this, R.string.noUsersAvailableMsg, Toast.LENGTH_LONG).show();
|
||||
} else {
|
||||
String msg = String.valueOf(numUsers) + " " + getResources().getString(R.string.usersUpdated);
|
||||
String msg = numUsers + " " + getResources().getString(R.string.usersUpdated);
|
||||
Toast.makeText(this, msg, Toast.LENGTH_LONG).show();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user