コード例 #1
0
 @OnClick(R.id.ok_button)
 public void newPermissionClicked() {
   if (!NetworkingUtils.isOnline(getContext())) {
     Snackbar.make(getView(), R.string.no_internet_connection, Snackbar.LENGTH_LONG).show();
     return;
   }
   User user = User.getUser(mPermissionEmailView.getText().toString());
   if (user == null) {
     Snackbar.make(getView(), getString(R.string.invalid_email), Snackbar.LENGTH_LONG).show();
     return;
   }
   user.saveLocal();
   int slaveId = 0;
   if (mSelectedSlave != null) {
     slaveId = mSelectedSlave.getId();
   }
   if (Permission.getType(mPermissionTypeView.getText().toString()) != Permission.ADMIN_PERMISSION
       && (mSlaves == null || mSlaves.size() == 0)) {
     Snackbar.make(getView(), R.string.master_without_slaves, Snackbar.LENGTH_LONG).show();
     return;
   }
   Permission adminPermission = User.getLoggedUser().getAdminPermission(mSelectedMaster);
   if (adminPermission == null) {
     Snackbar.make(getView(), R.string.you_are_not_admin, Snackbar.LENGTH_LONG).show();
     return;
   }
   String userKey = adminPermission.getKey();
   int permissionType = Permission.getType(mPermissionTypeView.getText().toString());
   String startDate =
       Permission.getDefaultDateString(mStartDateView.getText().toString())
           + "T"
           + mStartHourView.getText().toString();
   String endDate = "0";
   if (permissionType == Permission.TEMPORAL_PERMISSION) {
     endDate =
         Permission.getDefaultDateString(mEndDateView.getText().toString())
             + "T"
             + mEndHourView.getText().toString();
   }
   if (TextUtils.isEmpty(mKey)) {
     Permission permission =
         Permission.create(user, mSelectedMaster, permissionType, "", startDate, endDate, slaveId);
     mPermissionModifiedListener.onCreatePermissionClicked(permission, userKey);
     // If editing permission
   } else {
     mToEditPermission.setType(Permission.getType(mPermissionTypeView.getText().toString()));
     mToEditPermission.setStartDate(startDate);
     mToEditPermission.setEndDate(endDate);
     mToEditPermission.setSlaveId(slaveId);
     mPermissionModifiedListener.onModifyPermissionClicked(
         mToEditPermission, mOldSlaveId, userKey, mSelectedMaster.getId());
   }
 }