private void displayShareInfo(final Share share) { List<Integer> headers = new ArrayList<>(); List<String> details = new ArrayList<>(); headers.add(R.string.details_title); details.add(share.getName()); headers.add(R.string.details_owner); details.add(share.getUsername()); headers.add(R.string.details_description); details.add(share.getDescription()); headers.add(R.string.details_url); details.add(share.getUrl()); headers.add(R.string.details_created); details.add(Util.formatDate(share.getCreated())); headers.add(R.string.details_last_played); details.add(Util.formatDate(share.getLastVisited())); headers.add(R.string.details_expiration); details.add(Util.formatDate(share.getExpires(), false)); headers.add(R.string.details_played_count); details.add(Long.toString(share.getVisitCount())); Util.showDetailsDialog(context, R.string.details_title_playlist, headers, details); }
private void deleteShare(final Share share) { Util.confirmDialog( context, R.string.common_delete, share.getName(), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { new LoadingTask<Void>(context, false) { @Override protected Void doInBackground() throws Throwable { MusicService musicService = MusicServiceFactory.getMusicService(context); musicService.deleteShare(share.getId(), context, null); return null; } @Override protected void done(Void result) { adapter.removeItem(share); Util.toast( context, context.getResources().getString(R.string.share_deleted, share.getName())); } @Override protected void error(Throwable error) { String msg; if (error instanceof OfflineException || error instanceof ServerTooOldException) { msg = getErrorMessage(error); } else { msg = context .getResources() .getString(R.string.share_deleted_error, share.getName()) + " " + getErrorMessage(error); } Util.toast(context, msg, false); } }.execute(); } }); }
private void updateShareInfo(final Share share) { View dialogView = context.getLayoutInflater().inflate(R.layout.update_share, null); final EditText nameBox = (EditText) dialogView.findViewById(R.id.get_share_name); final DatePicker expireBox = (DatePicker) dialogView.findViewById(R.id.get_share_expire); final CheckBox noExpiresBox = (CheckBox) dialogView.findViewById(R.id.get_share_no_expire); nameBox.setText(share.getDescription()); Date expires = share.getExpires(); if (expires != null) { expireBox.updateDate(expires.getYear() + 1900, expires.getMonth(), expires.getDate()); } boolean noExpires = share.getExpires() == null; if (noExpires) { expireBox.setEnabled(false); noExpiresBox.setChecked(true); } noExpiresBox.setOnCheckedChangeListener( new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { expireBox.setEnabled(!isChecked); } }); new AlertDialog.Builder(context) .setIcon(android.R.drawable.ic_dialog_alert) .setTitle(R.string.playlist_update_info) .setView(dialogView) .setPositiveButton( R.string.common_ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { new LoadingTask<Void>(context, false) { @Override protected Void doInBackground() throws Throwable { Long expiresIn = 0L; if (!noExpiresBox.isChecked()) { Date expires = new Date( expireBox.getYear() - 1900, expireBox.getMonth(), expireBox.getDayOfMonth()); expiresIn = expires.getTime(); } MusicService musicService = MusicServiceFactory.getMusicService(context); musicService.updateShare( share.getId(), nameBox.getText().toString(), expiresIn, context, null); return null; } @Override protected void done(Void result) { refresh(); Util.toast( context, context .getResources() .getString(R.string.share_updated_info, share.getName())); } @Override protected void error(Throwable error) { String msg; if (error instanceof OfflineException || error instanceof ServerTooOldException) { msg = getErrorMessage(error); } else { msg = context .getResources() .getString(R.string.share_updated_info_error, share.getName()) + " " + getErrorMessage(error); } Util.toast(context, msg, false); } }.execute(); } }) .setNegativeButton(R.string.common_cancel, null) .show(); }