use of com.cpjd.roblu.models.RTeam in project Roblu by wdavies973.
the class IO method loadTeams.
/**
* Loads all the teams contained within an event
* @param eventID the eventID to load all the teams from
* @return an RTeam object instance array
*/
public RTeam[] loadTeams(int eventID) {
File[] files = getChildFiles(new File(context.getFilesDir(), PREFIX + File.separator + "events" + File.separator + eventID + File.separator + "teams" + File.separator));
if (files == null || files.length == 0)
return null;
RTeam[] teams = new RTeam[files.length];
for (int i = 0; i < teams.length; i++) {
teams[i] = loadTeam(eventID, Integer.parseInt(files[i].getName().replace(".ser", "")));
}
return teams;
}
use of com.cpjd.roblu.models.RTeam in project Roblu by wdavies973.
the class IO method createPreview.
/*
* Preview event methods
*
* Simplifies preview code by just creating and temporary event for viewing a form
*/
public void createPreview(RForm form) {
REvent event = new REvent(-1, "Preview event");
RTeam team = new RTeam("Previewing form", 0, -1);
team.setPage(-1);
team.verify(form);
saveEvent(event);
saveTeam(event.getID(), team);
saveForm(event.getID(), form);
}
use of com.cpjd.roblu.models.RTeam in project Roblu by wdavies973.
the class TeamsRecyclerTouchHelper method onSwiped.
/**
* This method is called when a card is swiped, in this case, the only swipe direction is for the team
* delete swipe
* @param viewHolder the viewHolder that was swiped
* @param direction the direction the card was swiped in
*/
@Override
public void onSwiped(final RecyclerView.ViewHolder viewHolder, int direction) {
/*
* User wants to delete a team, let's confirm it with them
*/
if (direction == ItemTouchHelper.LEFT) {
final RTeam team = teamsAdapter.getTeams().get(viewHolder.getAdapterPosition());
new FastDialogBuilder().setTitle("Are you sure?").setMessage("Are you sure you want to delete team " + team.getName() + "?").setPositiveButtonText("Delete").setNegativeButtonText("Cancel").setFastDialogListener(new FastDialogBuilder.FastDialogListener() {
@Override
public void accepted() {
teamsAdapter.remove(viewHolder.getAdapterPosition());
teamsAdapter.notifyDataSetChanged();
/*
* Also, we need to tell TeamsView that the LoadTeamsTask now contains an invalid internal teams array and must
* refresh it from the local disk
*/
teamsAdapter.getListener().teamDeleted(team);
}
@Override
public void denied() {
teamsAdapter.reAdd(team);
}
@Override
public void neutral() {
}
}).build(teamsAdapter.getContext());
}
}
use of com.cpjd.roblu.models.RTeam in project Roblu by wdavies973.
the class TeamsView method teamSelected.
@Override
public void teamSelected(View v) {
RTeam team = adapter.getTeams().get(rv.getChildLayoutPosition(v));
Intent startView = new Intent(this, TeamViewer.class);
startView.putExtra("teamID", team.getID());
startView.putExtra("eventID", eventDrawerManager.getEvent().getID());
startView.putExtra("editable", true);
startActivityForResult(startView, Constants.GENERAL);
}
use of com.cpjd.roblu.models.RTeam in project Roblu by wdavies973.
the class TeamsView method onActivityResult.
/**
* Receives data from activities originally launched from this class
* @param requestCode the request code the original activity was launched with
* @param resultCode the result code return from the launched activity
* @param data any payload data received from the launched activity
*/
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == Constants.CUSTOM_SORT_CONFIRMED) {
// the user selected a custom sort token, retrieve it and sort
lastCustomSortToken = data.getStringExtra("sortToken");
lastFilter = SORT_TYPE.CUSTOM_SORT;
executeLoadTeamsTask(lastFilter, false);
ignoreOnResumeOnce = true;
} else if (Constants.MASTER_FORM == requestCode && resultCode == Constants.FORM_CONFIRMED) {
// the user edited the master form, retrieve it and save it
Bundle b = data.getExtras();
if (b != null) {
settings.setMaster((RForm) b.getSerializable("form"));
}
io.saveSettings(settings);
} else /*
* This must occur BEFORE the straight up NEW_EVENT_CREATED return.
* This will be called after the user does a TBA sync
*/
if (requestCode == Constants.EVENT_SETTINGS_REQUEST && resultCode == Constants.NEW_EVENT_CREATED) {
executeLoadTeamsTask(lastFilter, true);
} else if (resultCode == Constants.NEW_EVENT_CREATED) {
// The user created an event, let's get the ID and select it
Bundle d = data.getExtras();
eventDrawerManager.loadEventsToDrawer();
eventDrawerManager.selectEvent(d != null ? d.getInt("eventID") : 0);
} else if (resultCode == Constants.MY_MATCHES_EXITED) {
executeLoadTeamsTask(lastFilter, true);
} else if (resultCode == Constants.CUSTOM_SORT_CANCELLED) {
// user exited custom sort, don't make the button in the filter dialog still display custom sort
lastFilter = settings.getLastFilter();
} else if (resultCode == Constants.TEAM_EDITED) {
// the user edited a team, let's toss it in the teams array and reload it also
if (eventDrawerManager.getEvent() == null)
return;
RTeam temp = io.loadTeam(eventDrawerManager.getEvent().getID(), data.getIntExtra("teamID", 0));
// Reload the teams array
for (int i = 0; i < teams.size(); i++) {
if (teams.get(i).getID() == temp.getID()) {
teams.set(i, temp);
break;
}
}
// Reload the edited team into the adapter
adapter.reAdd(temp);
if (lastQuery != null && !lastQuery.equals(""))
executeLoadTeamsTask(SORT_TYPE.SEARCH, false);
else
executeLoadTeamsTask(lastFilter, false);
ignoreOnResumeOnce = true;
} else if (resultCode == Constants.EVENT_SETTINGS_CHANGED) {
// user edited the event
int eventID = data.getIntExtra("eventID", 0);
eventDrawerManager.loadEventsToDrawer();
eventDrawerManager.selectEvent(eventID);
if (getSupportActionBar() != null)
getSupportActionBar().setSubtitle(eventDrawerManager.getEvent().getName());
executeLoadTeamsTask(lastFilter, true);
} else if (resultCode == Constants.SETTINGS_CHANGED) {
// user changed application settings (refresh UI to make sure it matches a possible RUI change)
// reload settings
settings = new IO(getApplicationContext()).loadSettings();
eventDrawerManager.loadEventsToDrawer();
if (eventDrawerManager.getEvent() != null)
eventDrawerManager.selectEvent(eventDrawerManager.getEvent().getID());
// new UIHandler(this, toolbar).update();
// eventDrawerManager = new EventDrawerManager(this, toolbar, this);
}
}
Aggregations