Commit 9d9b6fcc authored by Sajal Narang's avatar Sajal Narang

Reformat code

parent 1b9d3f22
......@@ -40,9 +40,9 @@
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="insti.app"
android:pathPattern="/org/.*" />
android:pathPattern="/org/.*"
android:scheme="https" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
......@@ -51,9 +51,9 @@
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="insti.app"
android:pathPattern="/user/.*" />
android:pathPattern="/user/.*"
android:scheme="https" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
......@@ -62,9 +62,9 @@
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="insti.app"
android:pathPattern="/event/.*" />
android:pathPattern="/event/.*"
android:scheme="https" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
......@@ -73,9 +73,9 @@
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="http"
android:host="insti.app"
android:pathPattern="/org/.*" />
android:pathPattern="/org/.*"
android:scheme="http" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
......@@ -84,9 +84,9 @@
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="http"
android:host="insti.app"
android:pathPattern="/user/.*" />
android:pathPattern="/user/.*"
android:scheme="http" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
......@@ -95,9 +95,9 @@
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="http"
android:host="insti.app"
android:pathPattern="/event/.*" />
android:pathPattern="/event/.*"
android:scheme="http" />
</intent-filter>
</activity>
<activity
......
......@@ -63,6 +63,7 @@
}
</style>
</head>
......
package app.insti;
import android.util.Log;
import com.google.firebase.messaging.FirebaseMessagingService;
import com.google.firebase.messaging.RemoteMessage;
......
......@@ -33,11 +33,11 @@ public class LoginActivity extends AppCompatActivity {
private static final int PLAY_SERVICES_RESOLUTION_REQUEST = 9000;
private final String redirectUri = "https://redirecturi";
private final String guestUri = "https://guesturi";
private boolean loggingIn = false;
public String authCode = null;
public String fcmId = null;
SessionManager session;
Context mContext = this;
private boolean loggingIn = false;
private ProgressDialog progressDialog;
@Override
......@@ -70,7 +70,7 @@ public class LoginActivity extends AppCompatActivity {
webview.loadUrl("file:///android_asset/login.html");
// Get FCM Id
FirebaseInstanceId.getInstance().getInstanceId().addOnSuccessListener( new OnSuccessListener<InstanceIdResult>() {
FirebaseInstanceId.getInstance().getInstanceId().addOnSuccessListener(new OnSuccessListener<InstanceIdResult>() {
@Override
public void onSuccess(InstanceIdResult instanceIdResult) {
fcmId = instanceIdResult.getToken();
......
......@@ -80,6 +80,17 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On
private boolean showNotifications = false;
private BackHandledFragment selectedFragment;
public static void hideKeyboard(Activity activity) {
InputMethodManager imm = (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
//Find the currently focused view, so we can grab the correct window token from it.
View view = activity.getCurrentFocus();
//If no view currently has focus, create a new one, just so we can grab a window token from it
if (view == null) {
view = new View(activity);
}
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
......@@ -140,7 +151,7 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On
int importance = NotificationManager.IMPORTANCE_HIGH;
NotificationChannel mChannel = null;
mChannel = new NotificationChannel(id, name,importance);
mChannel = new NotificationChannel(id, name, importance);
// Configure the notification channel.
mChannel.setDescription(description);
......@@ -227,7 +238,9 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On
}
}
/** Update FCM Id and update profile */
/**
* Update FCM Id and update profile
*/
private void updateFCMId() {
FirebaseInstanceId.getInstance().getInstanceId().addOnSuccessListener(new OnSuccessListener<InstanceIdResult>() {
@Override
......@@ -248,7 +261,8 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On
}
@Override
public void onFailure(Call<User> call, Throwable t) { }
public void onFailure(Call<User> call, Throwable t) {
}
});
}
});
......@@ -290,7 +304,7 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On
@Override
public void onBackPressed() {
if(selectedFragment == null || !selectedFragment.onBackPressed()) {
if (selectedFragment == null || !selectedFragment.onBackPressed()) {
// Selected fragment did not consume the back press event.
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) {
......@@ -310,7 +324,6 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
......@@ -509,17 +522,6 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On
return false;
}
public static void hideKeyboard(Activity activity) {
InputMethodManager imm = (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
//Find the currently focused view, so we can grab the correct window token from it.
View view = activity.getCurrentFocus();
//If no view currently has focus, create a new one, just so we can grab a window token from it
if (view == null) {
view = new View(activity);
}
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
@Override
public void setSelectedFragment(BackHandledFragment backHandledFragment) {
this.selectedFragment = backHandledFragment;
......
......@@ -51,7 +51,7 @@ public class BodyAdapter extends RecyclerView.Adapter<BodyAdapter.ViewHolder> {
Body body = bodyList.get(position);
holder.name.setText(body.getBodyName());
holder.description.setText(body.getBodyShortDescription());
Picasso.get().load(body.getBodyImageURL()).resize(0,200).into(holder.image);
Picasso.get().load(body.getBodyImageURL()).resize(0, 200).into(holder.image);
}
......@@ -60,6 +60,10 @@ public class BodyAdapter extends RecyclerView.Adapter<BodyAdapter.ViewHolder> {
return bodyList.size();
}
public void setBodyList(List<Body> bodyList) {
this.bodyList = bodyList;
}
public class ViewHolder extends RecyclerView.ViewHolder {
public TextView name;
public TextView description;
......@@ -72,8 +76,4 @@ public class BodyAdapter extends RecyclerView.Adapter<BodyAdapter.ViewHolder> {
image = (ImageView) itemView.findViewById(R.id.object_picture);
}
}
public void setBodyList(List<Body> bodyList) {
this.bodyList = bodyList;
}
}
package app.insti.adapter;
import android.content.Context;
import android.media.Image;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
......@@ -97,6 +96,10 @@ public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> {
return events.size();
}
public void setEvents(List<Event> events) {
this.events = events;
}
public class ViewHolder extends RecyclerView.ViewHolder {
private ImageView eventPicture;
private TextView eventTitle;
......@@ -112,8 +115,4 @@ public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> {
eventBigPicture = (ImageView) itemView.findViewById(R.id.big_object_picture);
}
}
public void setEvents(List<Event> events) {
this.events = events;
}
}
......@@ -3,7 +3,6 @@ package app.insti.adapter;
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
......@@ -110,6 +109,15 @@ public class NewsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
return NewsFragment.showLoader ? (newsArticles.size() + 1) : newsArticles.size();
}
public static class ProgressViewHolder extends RecyclerView.ViewHolder {
public ProgressBar progressBar;
public ProgressViewHolder(View v) {
super(v);
progressBar = (ProgressBar) v.findViewById(R.id.blog_load_item);
}
}
public class ViewHolder extends RecyclerView.ViewHolder {
private TextView articleTitle;
private TextView articleBody;
......@@ -125,12 +133,4 @@ public class NewsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
articleContent = (TextView) itemView.findViewById(R.id.article_content);
}
}
public static class ProgressViewHolder extends RecyclerView.ViewHolder {
public ProgressBar progressBar;
public ProgressViewHolder(View v) {
super(v);
progressBar = (ProgressBar)v.findViewById(R.id.blog_load_item);
}
}
}
......@@ -2,7 +2,6 @@ package app.insti.adapter;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
......@@ -25,6 +24,13 @@ import ru.noties.markwon.Markwon;
public class PlacementBlogAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
private final int VIEW_ITEM = 1;
private final int VIEW_PROG = 0;
private List<PlacementBlogPost> posts;
private Context context;
private ItemClickListener itemClickListener;
public PlacementBlogAdapter(List<PlacementBlogPost> posts, ItemClickListener itemClickListener) {
this.posts = posts;
this.itemClickListener = itemClickListener;
}
public List<PlacementBlogPost> getPosts() {
return posts;
......@@ -34,15 +40,6 @@ public class PlacementBlogAdapter extends RecyclerView.Adapter<RecyclerView.View
this.posts = posts;
}
private List<PlacementBlogPost> posts;
private Context context;
private ItemClickListener itemClickListener;
public PlacementBlogAdapter(List<PlacementBlogPost> posts, ItemClickListener itemClickListener) {
this.posts = posts;
this.itemClickListener = itemClickListener;
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
context = parent.getContext();
......@@ -101,6 +98,14 @@ public class PlacementBlogAdapter extends RecyclerView.Adapter<RecyclerView.View
}
}
public static class ProgressViewHolder extends RecyclerView.ViewHolder {
public ProgressBar progressBar;
public ProgressViewHolder(View v) {
super(v);
progressBar = (ProgressBar) v.findViewById(R.id.blog_load_item);
}
}
public class ViewHolder extends RecyclerView.ViewHolder {
private TextView postTitle;
......@@ -116,13 +121,4 @@ public class PlacementBlogAdapter extends RecyclerView.Adapter<RecyclerView.View
}
}
public static class ProgressViewHolder extends RecyclerView.ViewHolder {
public ProgressBar progressBar;
public ProgressViewHolder(View v) {
super(v);
progressBar = (ProgressBar) v.findViewById(R.id.blog_load_item);
}
}
}
......@@ -2,7 +2,6 @@ package app.insti.adapter;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
......@@ -100,6 +99,15 @@ public class TrainingBlogAdapter extends RecyclerView.Adapter<RecyclerView.ViewH
return TrainingBlogFragment.showLoader ? (posts.size() + 1) : posts.size();
}
public static class ProgressViewHolder extends RecyclerView.ViewHolder {
public ProgressBar progressBar;
public ProgressViewHolder(View v) {
super(v);
progressBar = (ProgressBar) v.findViewById(R.id.blog_load_item);
}
}
public class ViewHolder extends RecyclerView.ViewHolder {
private TextView postTitle;
private TextView postPublished;
......@@ -113,12 +121,4 @@ public class TrainingBlogAdapter extends RecyclerView.Adapter<RecyclerView.ViewH
postContent = (TextView) itemView.findViewById(R.id.post_content);
}
}
public static class ProgressViewHolder extends RecyclerView.ViewHolder {
public ProgressBar progressBar;
public ProgressViewHolder(View v) {
super(v);
progressBar = (ProgressBar)v.findViewById(R.id.blog_load_item);
}
}
}
......@@ -66,6 +66,10 @@ public class UserAdapter extends RecyclerView.Adapter<UserAdapter.ViewHolder> {
return userList.size();
}
public void setUserList(List<User> userList) {
this.userList = userList;
}
public class ViewHolder extends RecyclerView.ViewHolder {
public TextView userName;
public TextView role;
......@@ -78,8 +82,4 @@ public class UserAdapter extends RecyclerView.Adapter<UserAdapter.ViewHolder> {
image = (ImageView) itemView.findViewById(R.id.object_picture);
}
}
public void setUserList(List<User> userList) {
this.userList = userList;
}
}
package app.insti.api;
import okhttp3.OkHttpClient;
import okhttp3.logging.HttpLoggingInterceptor;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
......
......@@ -9,16 +9,14 @@ import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.squareup.picasso.Picasso;
import java.util.HashMap;
import java.util.Map;
import de.hdodenhof.circleimageview.CircleImageView;
import app.insti.R;
import de.hdodenhof.circleimageview.CircleImageView;
/**
* A simple {@link Fragment} subclass.
......@@ -55,7 +53,7 @@ public class AboutFragment extends BaseFragment {
put(R.id.cheekuimg, "cheeku.jpg");
put(R.id.sarthakimg, "sarthak.jpg");
put(R.id.sohamimg, "soham.jpg");
put(R.id.maitreyaimg,"maitreya.jpg");
put(R.id.maitreyaimg, "maitreya.jpg");
put(R.id.mrunmayiimg, "mrunmayi.jpg");
put(R.id.owaisimg, "owais.jpg");
put(R.id.hrushikeshimg, "hrushikesh.jpg");
......@@ -73,11 +71,12 @@ public class AboutFragment extends BaseFragment {
/* Show team pics */
for (final Map.Entry<Integer, String> entry : team.entrySet()) {
CircleImageView circleImageView = getActivity().findViewById(entry.getKey());
Picasso.get().load("https://insti.app/team-pics/" + entry.getValue()).resize(0,300).into(circleImageView);
Picasso.get().load("https://insti.app/team-pics/" + entry.getValue()).resize(0, 300).into(circleImageView);
}
/* Map TextView ids to links */
final Map<Integer, String> joinUs = new HashMap<Integer, String>() {{;
final Map<Integer, String> joinUs = new HashMap<Integer, String>() {{
;
put(R.id.django, "https://github.com/wncc/IITBapp");
put(R.id.android, "https://github.com/wncc/InstiApp");
put(R.id.angular, "https://github.com/pulsejet/iitb-app-angular");
......
......@@ -25,8 +25,8 @@ import android.widget.Toast;
import com.google.gson.Gson;
import app.insti.Constants;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
import app.insti.data.Body;
......@@ -37,9 +37,8 @@ import retrofit2.Response;
public class AddEventFragment extends BaseFragment {
private ProgressDialog progressDialog;
public ValueCallback<Uri[]> uploadMessage;
private ProgressDialog progressDialog;
public AddEventFragment() {
// Required empty public constructor
......@@ -98,6 +97,7 @@ public class AddEventFragment extends BaseFragment {
webView.setOnTouchListener(new View.OnTouchListener() {
float m_downX;
public boolean onTouch(View v, MotionEvent event) {
if (event.getPointerCount() > 1) {
......@@ -128,7 +128,39 @@ public class AddEventFragment extends BaseFragment {
return view;
}
public class MyWebViewClient extends WebViewClient{
void openEvent(Event event) {
String eventJson = new Gson().toJson(event);
Bundle bundle = getArguments();
if (bundle == null)
bundle = new Bundle();
bundle.putString(Constants.EVENT_JSON, eventJson);
EventFragment eventFragment = new EventFragment();
eventFragment.setArguments(bundle);
FragmentManager manager = getActivity().getSupportFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_left, R.anim.slide_in_right, R.anim.slide_out_right);
transaction.replace(R.id.framelayout_for_fragment, eventFragment, eventFragment.getTag());
transaction.addToBackStack(eventFragment.getTag()).commit();
}
void openBody(Body body) {
BodyFragment bodyFragment = BodyFragment.newInstance(body);
FragmentManager manager = getActivity().getSupportFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_left, R.anim.slide_in_right, R.anim.slide_out_right);
transaction.replace(R.id.framelayout_for_fragment, bodyFragment, bodyFragment.getTag());
transaction.addToBackStack(bodyFragment.getTag()).commit();
}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 101) {
if (uploadMessage == null) return;
uploadMessage.onReceiveValue(WebChromeClient.FileChooserParams.parseResult(resultCode, data));
uploadMessage = null;
}
}
public class MyWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
/* Check URL */
......@@ -145,7 +177,8 @@ public class AddEventFragment extends BaseFragment {
}
@Override
public void onFailure(Call<Event> call, Throwable t) { }
public void onFailure(Call<Event> call, Throwable t) {
}
});
return true;
......@@ -162,7 +195,8 @@ public class AddEventFragment extends BaseFragment {
}
@Override
public void onFailure(Call<Body> call, Throwable t) { }
public void onFailure(Call<Body> call, Throwable t) {
}
});
return true;
......@@ -206,36 +240,4 @@ public class AddEventFragment extends BaseFragment {
return true;
}
}
void openEvent(Event event) {
String eventJson = new Gson().toJson(event);
Bundle bundle = getArguments();
if (bundle == null)
bundle = new Bundle();
bundle.putString(Constants.EVENT_JSON, eventJson);
EventFragment eventFragment = new EventFragment();
eventFragment.setArguments(bundle);
FragmentManager manager = getActivity().getSupportFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_left, R.anim.slide_in_right, R.anim.slide_out_right);
transaction.replace(R.id.framelayout_for_fragment, eventFragment, eventFragment.getTag());
transaction.addToBackStack(eventFragment.getTag()).commit();
}
void openBody(Body body) {
BodyFragment bodyFragment = BodyFragment.newInstance(body);
FragmentManager manager = getActivity().getSupportFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_left, R.anim.slide_in_right, R.anim.slide_out_right);
transaction.replace(R.id.framelayout_for_fragment, bodyFragment, bodyFragment.getTag());
transaction.addToBackStack(bodyFragment.getTag()).commit();
}
public void onActivityResult(int requestCode, int resultCode, Intent data){
if (requestCode == 101) {
if (uploadMessage == null) return;
uploadMessage.onReceiveValue(WebChromeClient.FileChooserParams.parseResult(resultCode, data));
uploadMessage = null;
}
}
}
......@@ -4,12 +4,13 @@ import android.os.Bundle;
public abstract class BackHandledFragment extends BaseFragment {
protected BackHandlerInterface backHandlerInterface;
public abstract boolean onBackPressed();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(!(getActivity() instanceof BackHandlerInterface)) {
if (!(getActivity() instanceof BackHandlerInterface)) {
throw new ClassCastException("Hosting activity must implement BackHandlerInterface");
} else {
backHandlerInterface = (BackHandlerInterface) getActivity();
......
......@@ -38,9 +38,9 @@ import java.util.List;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.ShareURLMaker;
import app.insti.activity.MainActivity;
import app.insti.adapter.BodyAdapter;
import app.insti.adapter.FeedAdapter;
import app.insti.adapter.UserAdapter;
......@@ -93,16 +93,6 @@ public class BodyFragment extends BackHandledFragment {
// Required empty public constructor
}
@Override
public boolean onBackPressed() {
if (zoomMode) {
zoomOut(expandedImageView, startBounds, startScaleFinal, bodyPicture);
zoomMode = false;
return true;
}
return false;
}
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
......@@ -119,6 +109,16 @@ public class BodyFragment extends BackHandledFragment {
return fragment;
}
@Override
public boolean onBackPressed() {
if (zoomMode) {
zoomOut(expandedImageView, startBounds, startScaleFinal, bodyPicture);
zoomMode = false;
return true;
}
return false;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
......@@ -185,7 +185,7 @@ public class BodyFragment extends BackHandledFragment {
private void setVisibleIfHasElements(int[] viewIds, List list) {
if (list != null && list.size() > 0) {
for (int viewId: viewIds){
for (int viewId : viewIds) {
getActivity().findViewById(viewId).setVisibility(View.VISIBLE);
}
}
......@@ -194,7 +194,7 @@ public class BodyFragment extends BackHandledFragment {
private void displayBody() {
/* Skip if we're already destroyed */
if (getActivity() == null || getView() == null) return;
if(!body.equals(min_body)) bodyDisplayed = true;
if (!body.equals(min_body)) bodyDisplayed = true;
TextView bodyName = (TextView) getView().findViewById(R.id.body_name);
TextView bodyDescription = (TextView) getView().findViewById(R.id.body_description);
......@@ -408,33 +408,6 @@ public class BodyFragment extends BackHandledFragment {
return inflater.inflate(R.layout.fragment_body, container, false);
}
private class updateDbBody extends AsyncTask<Body, Void, Integer> {
@Override
protected Integer doInBackground(Body... body) {
if (appDatabase.dbDao().getBody(body[0].getBodyID()).length > 0) {
appDatabase.dbDao().updateBody(body[0]);
} else {
appDatabase.dbDao().insertBody(body[0]);
}
return 1;
}
}
private class getDbBody extends AsyncTask<String, Void, Body[]> {
@Override
protected Body[] doInBackground(String... id) {
return appDatabase.dbDao().getBody(min_body.getBodyID());
}
@Override
protected void onPostExecute(Body[] result) {
if (result.length > 0 && !bodyDisplayed) {
body = result[0];
displayBody();
}
}
}
private void zoomOut(final ImageView expandedImageView, Rect startBounds, float startScaleFinal, final View thumbView) {
expandedImageView.setBackgroundColor(0x00000000);
if (mCurrentAnimator != null) {
......@@ -448,7 +421,7 @@ public class BodyFragment extends BackHandledFragment {
.ofFloat(expandedImageView, View.X, startBounds.left))
.with(ObjectAnimator
.ofFloat(expandedImageView,
View.Y,startBounds.top))
View.Y, startBounds.top))
.with(ObjectAnimator
.ofFloat(expandedImageView,
View.SCALE_X, startScaleFinal))
......@@ -571,4 +544,31 @@ public class BodyFragment extends BackHandledFragment {
startScaleFinal = startScale;
zoomMode = true;
}
private class updateDbBody extends AsyncTask<Body, Void, Integer> {
@Override
protected Integer doInBackground(Body... body) {
if (appDatabase.dbDao().getBody(body[0].getBodyID()).length > 0) {
appDatabase.dbDao().updateBody(body[0]);
} else {
appDatabase.dbDao().insertBody(body[0]);
}
return 1;
}
}
private class getDbBody extends AsyncTask<String, Void, Body[]> {
@Override
protected Body[] doInBackground(String... id) {
return appDatabase.dbDao().getBody(min_body.getBodyID());
}
@Override
protected void onPostExecute(Body[] result) {
if (result.length > 0 && !bodyDisplayed) {
body = result[0];
displayBody();
}
}
}
}
......@@ -29,8 +29,8 @@ import java.util.TimeZone;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.adapter.FeedAdapter;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
......@@ -92,7 +92,7 @@ public class CalendarFragment extends BaseFragment {
((MainActivity) getActivity()).updateFragment(addEventFragment);
}
});
if (((MainActivity)getActivity()).createEventAccess()) {
if (((MainActivity) getActivity()).createEventAccess()) {
fab.setVisibility(View.VISIBLE);
}
......
......@@ -44,9 +44,9 @@ import java.util.List;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.ShareURLMaker;
import app.insti.activity.MainActivity;
import app.insti.adapter.BodyAdapter;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
......@@ -92,6 +92,27 @@ public class EventFragment extends BackHandledFragment {
// Required empty public constructor
}
/**
* Get a spannable with a small count badge to set for an element text
*
* @param text Text to show in the spannable
* @param count integer count to show in the badge
* @return spannable to be used as view.setText(spannable)
*/
static Spannable getCountBadgeSpannable(String text, Integer count) {
// Check for nulls
if (count == null) return new SpannableString(text);
// Make a spannable
String countString = Integer.toString(count);
Spannable spannable = new SpannableString(text + " " + countString);
// Set font face and color of badge
spannable.setSpan(new RelativeSizeSpan(0.75f), text.length(), text.length() + 1 + countString.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
spannable.setSpan(new ForegroundColorSpan(Color.DKGRAY), text.length(), text.length() + 1 + countString.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
return spannable;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
......@@ -270,28 +291,6 @@ public class EventFragment extends BackHandledFragment {
goingButton.setText(getCountBadgeSpannable("GOING", event.getEventGoingCount()));
}
/**
* Get a spannable with a small count badge to set for an element text
*
* @param text Text to show in the spannable
* @param count integer count to show in the badge
* @return spannable to be used as view.setText(spannable)
*/
static Spannable getCountBadgeSpannable(String text, Integer count) {
// Check for nulls
if (count == null) return new SpannableString(text);
// Make a spannable
String countString = Integer.toString(count);
Spannable spannable = new SpannableString(text + " " + countString);
// Set font face and color of badge
spannable.setSpan(new RelativeSizeSpan(0.75f), text.length(), text.length() + 1 + countString.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
spannable.setSpan(new ForegroundColorSpan(Color.DKGRAY), text.length(), text.length() + 1 + countString.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
return spannable;
}
View.OnClickListener getUESOnClickListener(final int status) {
return new View.OnClickListener() {
@Override
......@@ -304,14 +303,26 @@ public class EventFragment extends BackHandledFragment {
if (response.isSuccessful()) {
/* TODO: Find a better way to change counts */
if (endStatus == 0) {
if (event.getEventUserUes() == 1) { event.setEventInterestedCount(event.getEventInterestedCount() - 1); }
if (event.getEventUserUes() == 2) { event.setEventGoingCount(event.getEventGoingCount() - 1); }
if (event.getEventUserUes() == 1) {
event.setEventInterestedCount(event.getEventInterestedCount() - 1);
}
if (event.getEventUserUes() == 2) {
event.setEventGoingCount(event.getEventGoingCount() - 1);
}
} else if (endStatus == 1) {
if (event.getEventUserUes() != 1) { event.setEventInterestedCount(event.getEventInterestedCount() + 1); }
if (event.getEventUserUes() == 2) { event.setEventGoingCount(event.getEventGoingCount() - 1); }
if (event.getEventUserUes() != 1) {
event.setEventInterestedCount(event.getEventInterestedCount() + 1);
}
if (event.getEventUserUes() == 2) {
event.setEventGoingCount(event.getEventGoingCount() - 1);
}
} else if (endStatus == 2) {
if (event.getEventUserUes() != 2) { event.setEventGoingCount(event.getEventGoingCount() + 1); }
if (event.getEventUserUes() == 1) { event.setEventInterestedCount(event.getEventInterestedCount() - 1); }
if (event.getEventUserUes() != 2) {
event.setEventGoingCount(event.getEventGoingCount() + 1);
}
if (event.getEventUserUes() == 1) {
event.setEventInterestedCount(event.getEventInterestedCount() - 1);
}
}
event.setEventUserUes(endStatus);
......@@ -329,14 +340,6 @@ public class EventFragment extends BackHandledFragment {
};
}
private class updateDbEvent extends AsyncTask<Event, Void, Integer> {
@Override
protected Integer doInBackground(Event... event) {
appDatabase.dbDao().updateEvent(event[0]);
return 1;
}
}
private void zoomImageFromThumb(final ImageView thumbView) {
// If there's an animation in progress, cancel it
// immediately and proceed with this one.
......@@ -446,7 +449,7 @@ public class EventFragment extends BackHandledFragment {
.ofFloat(expandedImageView, View.X, startBounds.left))
.with(ObjectAnimator
.ofFloat(expandedImageView,
View.Y,startBounds.top))
View.Y, startBounds.top))
.with(ObjectAnimator
.ofFloat(expandedImageView,
View.SCALE_X, startScaleFinal))
......@@ -473,4 +476,12 @@ public class EventFragment extends BackHandledFragment {
set.start();
mCurrentAnimator = set;
}
private class updateDbEvent extends AsyncTask<Event, Void, Integer> {
@Override
protected Integer doInBackground(Event... event) {
appDatabase.dbDao().updateEvent(event[0]);
return 1;
}
}
}
......@@ -21,8 +21,8 @@ import java.util.List;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.adapter.BodyAdapter;
import app.insti.adapter.FeedAdapter;
import app.insti.adapter.UserAdapter;
......@@ -60,6 +60,7 @@ public class ExploreFragment extends Fragment {
/**
* Use this factory method to create a new instance of
* this fragment.
*
* @return A new instance of fragment ExploreFragment.
*/
// TODO: Rename and change types and number of parameters
......@@ -96,7 +97,8 @@ public class ExploreFragment extends Fragment {
}
@Override
public void onFailure(Call<List<Body>> call, Throwable t) {}
public void onFailure(Call<List<Body>> call, Throwable t) {
}
});
} else {
getView().findViewById(R.id.loadingPanel).setVisibility(View.GONE);
......@@ -106,9 +108,12 @@ public class ExploreFragment extends Fragment {
final EditText searchEditText = getView().findViewById(R.id.explore_search);
searchEditText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {}
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
......
......@@ -23,8 +23,8 @@ import java.util.List;
import app.insti.ActivityBuffer;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.adapter.FeedAdapter;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
......@@ -124,9 +124,9 @@ public class FeedFragment extends BaseFragment {
((MainActivity) getActivity()).updateFragment(addEventFragment);
}
});
feedRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener(){
feedRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy){
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
if (dy > 0) fab.hide();
else if (dy < 0) fab.show();
}
......
......@@ -156,12 +156,14 @@ public class MessMenuFragment extends BaseFragment {
final List<MessMenu> sortedMenus = new ArrayList<>();
final Calendar calendar = Calendar.getInstance(Locale.UK);
int today = calendar.get(Calendar.DAY_OF_WEEK) - 2;
if (today == -1) { today = 6; }
if (today == -1) {
today = 6;
}
for (int i = 0; i < 7; i++) {
final int day = (today + i) % 7 + 1;
for(MessMenu menu : messMenus) {
if(menu.getDay() == day) {
for (MessMenu menu : messMenus) {
if (menu.getDay() == day) {
sortedMenus.add(menu);
}
}
......
......@@ -23,8 +23,8 @@ import java.util.List;
import app.insti.ActivityBuffer;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.adapter.FeedAdapter;
import app.insti.data.AppDatabase;
import app.insti.data.Event;
......@@ -67,7 +67,7 @@ public class MyEventsFragment extends BaseFragment {
public void onStart() {
super.onStart();
if (((MainActivity)getActivity()).createEventAccess()) {
if (((MainActivity) getActivity()).createEventAccess()) {
fab.setVisibility(View.VISIBLE);
}
......
......@@ -26,8 +26,8 @@ import java.util.List;
import app.insti.ActivityBuffer;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.adapter.NewsAdapter;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
......@@ -42,11 +42,11 @@ import retrofit2.Response;
*/
public class NewsFragment extends BaseFragment {
public static boolean showLoader = true;
private RecyclerView newsRecyclerView;
private SwipeRefreshLayout newsSwipeRefreshLayout;
private AppDatabase appDatabase;
private boolean freshNewsDisplayed = false;
public static boolean showLoader = true;
private String searchQuery;
public NewsFragment() {
......@@ -177,28 +177,6 @@ public class NewsFragment extends BaseFragment {
startActivity(browse);
}
private class updateDatabase extends AsyncTask<List<NewsArticle>, Void, Integer> {
@Override
protected Integer doInBackground(List<NewsArticle>... posts) {
appDatabase.dbDao().deleteNewsArticles();
appDatabase.dbDao().insertNewsArticles(posts[0]);
return 1;
}
}
private class showNewsFromDB extends AsyncTask<String, Void, List<NewsArticle>> {
@Override
protected List<NewsArticle> doInBackground(String... posts) {
return appDatabase.dbDao().getAllNewsArticles();
}
protected void onPostExecute(List<NewsArticle> result) {
if (!freshNewsDisplayed) {
displayNews(result);
}
}
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.search_view_menu, menu);
......@@ -215,7 +193,7 @@ public class NewsFragment extends BaseFragment {
@Override
public boolean onQueryTextChange(String newText) {
if (TextUtils.isEmpty(newText)){
if (TextUtils.isEmpty(newText)) {
//Text is cleared, do your thing
searchQuery = null;
updateNews();
......@@ -235,4 +213,26 @@ public class NewsFragment extends BaseFragment {
updateNews();
showLoader = false;
}
private class updateDatabase extends AsyncTask<List<NewsArticle>, Void, Integer> {
@Override
protected Integer doInBackground(List<NewsArticle>... posts) {
appDatabase.dbDao().deleteNewsArticles();
appDatabase.dbDao().insertNewsArticles(posts[0]);
return 1;
}
}
private class showNewsFromDB extends AsyncTask<String, Void, List<NewsArticle>> {
@Override
protected List<NewsArticle> doInBackground(String... posts) {
return appDatabase.dbDao().getAllNewsArticles();
}
protected void onPostExecute(List<NewsArticle> result) {
if (!freshNewsDisplayed) {
displayNews(result);
}
}
}
}
......@@ -18,8 +18,8 @@ import java.util.List;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.adapter.NotificationsAdapter;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
......@@ -58,7 +58,7 @@ public class NotificationsFragment extends BaseFragment {
toolbar.setTitle("Notifications");
RetrofitInterface retrofitInterface = ServiceGenerator.createService(RetrofitInterface.class);
retrofitInterface.getNotifications(((MainActivity)getActivity()).getSessionIDHeader()).enqueue(new Callback<List<Notification>>() {
retrofitInterface.getNotifications(((MainActivity) getActivity()).getSessionIDHeader()).enqueue(new Callback<List<Notification>>() {
@Override
public void onResponse(Call<List<Notification>> call, Response<List<Notification>> response) {
if (response.isSuccessful()) {
......@@ -68,7 +68,8 @@ public class NotificationsFragment extends BaseFragment {
}
@Override
public void onFailure(Call<List<Notification>> call, Throwable t) { }
public void onFailure(Call<List<Notification>> call, Throwable t) {
}
});
}
......@@ -87,12 +88,15 @@ public class NotificationsFragment extends BaseFragment {
/* Mark notification read */
RetrofitInterface retrofitInterface = ServiceGenerator.createService(RetrofitInterface.class);
String sessId = ((MainActivity)getActivity()).getSessionIDHeader();
String sessId = ((MainActivity) getActivity()).getSessionIDHeader();
retrofitInterface.markNotificationRead(sessId, notification.getNotificationId()).enqueue(new Callback<Void>() {
@Override
public void onResponse(Call<Void> call, Response<Void> response) { }
public void onResponse(Call<Void> call, Response<Void> response) {
}
@Override
public void onFailure(Call<Void> call, Throwable t) { }
public void onFailure(Call<Void> call, Throwable t) {
}
});
FragmentManager manager = getActivity().getSupportFragmentManager();
......@@ -100,7 +104,9 @@ public class NotificationsFragment extends BaseFragment {
String tag = "";
Bundle bundle = getArguments();
if (bundle == null) { bundle = new Bundle(); }
if (bundle == null) {
bundle = new Bundle();
}
bundle.putString(Constants.SESSION_ID, ((MainActivity) getActivity()).getSessionIDHeader());
/* Open event */
......
......@@ -26,8 +26,8 @@ import java.util.List;
import app.insti.ActivityBuffer;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.adapter.PlacementBlogAdapter;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
......@@ -42,12 +42,12 @@ import retrofit2.Response;
*/
public class PlacementBlogFragment extends BaseFragment {
public static boolean showLoader = true;
private RecyclerView placementFeedRecyclerView;
private PlacementBlogAdapter placementBlogAdapter;
private SwipeRefreshLayout feedSwipeRefreshLayout;
private AppDatabase appDatabase;
private boolean freshBlogDisplayed = false;
public static boolean showLoader = true;
private String searchQuery;
......@@ -177,28 +177,6 @@ public class PlacementBlogFragment extends BaseFragment {
startActivity(browse);
}
private class updateDatabase extends AsyncTask<List<PlacementBlogPost>, Void, Integer> {
@Override
protected Integer doInBackground(List<PlacementBlogPost>... posts) {
appDatabase.dbDao().deletePlacementBlogPosts();
appDatabase.dbDao().insertPlacementBlogPosts(posts[0]);
return 1;
}
}
private class showPlacementBlogFromDB extends AsyncTask<String, Void, List<PlacementBlogPost>> {
@Override
protected List<PlacementBlogPost> doInBackground(String... posts) {
return appDatabase.dbDao().getAllPlacementBlogPosts();
}
protected void onPostExecute(List<PlacementBlogPost> result) {
if (!freshBlogDisplayed) {
displayPlacementFeed(result);
}
}
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.search_view_menu, menu);
......@@ -215,7 +193,7 @@ public class PlacementBlogFragment extends BaseFragment {
@Override
public boolean onQueryTextChange(String newText) {
if (TextUtils.isEmpty(newText)){
if (TextUtils.isEmpty(newText)) {
//Text is cleared, do your thing
searchQuery = null;
updatePlacementFeed();
......@@ -235,4 +213,26 @@ public class PlacementBlogFragment extends BaseFragment {
updatePlacementFeed();
showLoader = false;
}
private class updateDatabase extends AsyncTask<List<PlacementBlogPost>, Void, Integer> {
@Override
protected Integer doInBackground(List<PlacementBlogPost>... posts) {
appDatabase.dbDao().deletePlacementBlogPosts();
appDatabase.dbDao().insertPlacementBlogPosts(posts[0]);
return 1;
}
}
private class showPlacementBlogFromDB extends AsyncTask<String, Void, List<PlacementBlogPost>> {
@Override
protected List<PlacementBlogPost> doInBackground(String... posts) {
return appDatabase.dbDao().getAllPlacementBlogPosts();
}
protected void onPostExecute(List<PlacementBlogPost> result) {
if (!freshBlogDisplayed) {
displayPlacementFeed(result);
}
}
}
}
......@@ -66,6 +66,13 @@ public class ProfileFragment extends BackHandledFragment {
// Required empty public constructor
}
public static ProfileFragment newInstance(String userID) {
ProfileFragment fragment = new ProfileFragment();
Bundle args = new Bundle();
args.putString(Constants.USER_ID, userID);
fragment.setArguments(args);
return fragment;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
......@@ -221,14 +228,6 @@ public class ProfileFragment extends BackHandledFragment {
mCurrentAnimator = set;
}
public static ProfileFragment newInstance(String userID) {
ProfileFragment fragment = new ProfileFragment();
Bundle args = new Bundle();
args.putString(Constants.USER_ID, userID);
fragment.setArguments(args);
return fragment;
}
private void zoomImageFromThumb(final ImageView thumbView) {
// If there's an animation in progress, cancel it
// immediately and proceed with this one.
......
......@@ -17,7 +17,7 @@ public class QuickLinksFragment extends BaseFragment {
// Required empty public constructor
}
public void onStart(){
public void onStart() {
super.onStart();
Toolbar toolbar = getActivity().findViewById(R.id.toolbar);
......@@ -47,36 +47,125 @@ public class QuickLinksFragment extends BaseFragment {
TextView Hospital = getActivity().findViewById(R.id.button_Hospital);
TextView VPN = getActivity().findViewById(R.id.button_VPN);
CMS.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://gymkhana.iitb.ac.in/cms_new/"); } });
CMSMaint.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://support.iitb.ac.in"); } });
CMSNet.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://help-cc.iitb.ac.in/"); } });
ASC.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://asc.iitb.ac.in"); } });
ASCExt.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://portal.iitb.ac.in/asc"); } });
Moodle.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://moodle.iitb.ac.in"); } });
Intern.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://placements.iitb.ac.in/internship/login.jsp"); } });
Placement.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://placements.iitb.ac.in/placements/login.jsp"); } });
Library.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://www.library.iitb.ac.in/"); } });
AcadCal.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://www.iitb.ac.in/newacadhome/toacadcalender.jsp"); } });
AcadTime.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://www.iitb.ac.in/newacadhome/timetable.jsp"); } });
Holidays.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://www.iitb.ac.in/en/about-iit-bombay/iit-bombay-holidays-list"); } });
Circulars.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://www.iitb.ac.in/newacadhome/circular.jsp"); } });
Courses.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://portal.iitb.ac.in/asc/Courses"); } });
WebMail.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://webmail.iitb.ac.in"); } });
GPO.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://gpo.iitb.ac.in"); } });
CAMP.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://camp.iitb.ac.in/"); } });
MSStore.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://msstore.iitb.ac.in/"); } });
BigHome.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://home.iitb.ac.in/"); } });
CMS.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://gymkhana.iitb.ac.in/cms_new/");
}
});
CMSMaint.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://support.iitb.ac.in");
}
});
CMSNet.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://help-cc.iitb.ac.in/");
}
});
ASC.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://asc.iitb.ac.in");
}
});
ASCExt.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://portal.iitb.ac.in/asc");
}
});
Moodle.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://moodle.iitb.ac.in");
}
});
Intern.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://placements.iitb.ac.in/internship/login.jsp");
}
});
Placement.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://placements.iitb.ac.in/placements/login.jsp");
}
});
Library.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://www.library.iitb.ac.in/");
}
});
AcadCal.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://www.iitb.ac.in/newacadhome/toacadcalender.jsp");
}
});
AcadTime.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://www.iitb.ac.in/newacadhome/timetable.jsp");
}
});
Holidays.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://www.iitb.ac.in/en/about-iit-bombay/iit-bombay-holidays-list");
}
});
Circulars.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://www.iitb.ac.in/newacadhome/circular.jsp");
}
});
Courses.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://portal.iitb.ac.in/asc/Courses");
}
});
WebMail.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://webmail.iitb.ac.in");
}
});
GPO.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://gpo.iitb.ac.in");
}
});
CAMP.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://camp.iitb.ac.in/");
}
});
MSStore.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://msstore.iitb.ac.in/");
}
});
BigHome.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://home.iitb.ac.in/");
}
});
// FTP.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("ftp://ftp.iitb.ac.in/"); } });
Intercom.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://portal.iitb.ac.in/TelephoneDirectory/"); } });
Hospital.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("http://www.iitb.ac.in/hospital/"); } });
VPN.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { goToUrl("https://www.cc.iitb.ac.in/engservices/engaccessingiitffromoutside/19-vpn"); } });
Intercom.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://portal.iitb.ac.in/TelephoneDirectory/");
}
});
Hospital.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("http://www.iitb.ac.in/hospital/");
}
});
VPN.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
goToUrl("https://www.cc.iitb.ac.in/engservices/engaccessingiitffromoutside/19-vpn");
}
});
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_quick_links, container, false);
}
public void goToUrl (String url) {
public void goToUrl(String url) {
Uri uriUrl = Uri.parse(url);
Intent launchBrowser = new Intent(Intent.ACTION_VIEW, uriUrl);
startActivity(launchBrowser);
......
......@@ -18,9 +18,9 @@ import android.widget.TextView;
import com.squareup.picasso.Picasso;
import app.insti.Constants;
import app.insti.activity.LoginActivity;
import app.insti.R;
import app.insti.SessionManager;
import app.insti.activity.LoginActivity;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
import app.insti.data.User;
......
......@@ -26,8 +26,8 @@ import java.util.List;
import app.insti.ActivityBuffer;
import app.insti.Constants;
import app.insti.ItemClickListener;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.activity.MainActivity;
import app.insti.adapter.TrainingBlogAdapter;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
......@@ -42,11 +42,11 @@ import retrofit2.Response;
*/
public class TrainingBlogFragment extends BaseFragment {
public static boolean showLoader = true;
private RecyclerView trainingFeedRecyclerView;
private SwipeRefreshLayout feedSwipeRefreshLayout;
private AppDatabase appDatabase;
private boolean freshBlogDisplayed = false;
public static boolean showLoader = true;
private String searchQuery;
......@@ -176,28 +176,6 @@ public class TrainingBlogFragment extends BaseFragment {
startActivity(browse);
}
private class updateDatabase extends AsyncTask<List<TrainingBlogPost>, Void, Integer> {
@Override
protected Integer doInBackground(List<TrainingBlogPost>... posts) {
appDatabase.dbDao().deleteTrainingBlogPosts();
appDatabase.dbDao().insertTrainingBlogPosts(posts[0]);
return 1;
}
}
private class showTrainingBlogFromDB extends AsyncTask<String, Void, List<TrainingBlogPost>> {
@Override
protected List<TrainingBlogPost> doInBackground(String... posts) {
return appDatabase.dbDao().getAllTrainingBlogPosts();
}
protected void onPostExecute(List<TrainingBlogPost> result) {
if (!freshBlogDisplayed) {
displayTrainingFeed(result);
}
}
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.search_view_menu, menu);
......@@ -214,7 +192,7 @@ public class TrainingBlogFragment extends BaseFragment {
@Override
public boolean onQueryTextChange(String newText) {
if (TextUtils.isEmpty(newText)){
if (TextUtils.isEmpty(newText)) {
//Text is cleared, do your thing
searchQuery = null;
updateTrainingFeed();
......@@ -234,4 +212,26 @@ public class TrainingBlogFragment extends BaseFragment {
updateTrainingFeed();
showLoader = false;
}
private class updateDatabase extends AsyncTask<List<TrainingBlogPost>, Void, Integer> {
@Override
protected Integer doInBackground(List<TrainingBlogPost>... posts) {
appDatabase.dbDao().deleteTrainingBlogPosts();
appDatabase.dbDao().insertTrainingBlogPosts(posts[0]);
return 1;
}
}
private class showTrainingBlogFromDB extends AsyncTask<String, Void, List<TrainingBlogPost>> {
@Override
protected List<TrainingBlogPost> doInBackground(String... posts) {
return appDatabase.dbDao().getAllTrainingBlogPosts();
}
protected void onPostExecute(List<TrainingBlogPost> result) {
if (!freshBlogDisplayed) {
displayTrainingFeed(result);
}
}
}
}
......@@ -16,9 +16,9 @@ import java.util.List;
import java.util.concurrent.TimeUnit;
import app.insti.Constants;
import app.insti.activity.MainActivity;
import app.insti.R;
import app.insti.SessionManager;
import app.insti.activity.MainActivity;
import app.insti.api.RetrofitInterface;
import app.insti.api.ServiceGenerator;
import app.insti.data.Event;
......@@ -29,11 +29,11 @@ import retrofit2.Response;
public class NotificationIntentService extends JobIntentService {
public static final String ACTION_OPEN_EVENT = "ACTION_OPEN_EVENT";
private static final String ACTION_START = "ACTION_START";
private static final String ACTION_DELETE = "ACTION_DELETE";
private static final String ACTION_NAVIGATE = "ACTION_NAVIGATE";
private static final String ACTION_NOT_GOING = "ACTION_NOT_GOING";
public static final String ACTION_OPEN_EVENT = "ACTION_OPEN_EVENT";
private static int NOTIFICATION_ID = 1;
private NotificationManager manager;
......@@ -97,7 +97,8 @@ public class NotificationIntentService extends JobIntentService {
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
startActivity(mapIntent);
}
} finally { }
} finally {
}
}
private void processDeleteNotification(Intent intent) {
......
......@@ -45,21 +45,6 @@ public class FuzzySearchAdapter extends BaseAdapter {
map = new ArrayList<ScoredMarker>();
}
public class ViewHolder {
TextView label;
LinearLayout rowContainer;
}
public class ScoredMarker {
Marker m;
int score;
public ScoredMarker(int score, Marker m) {
this.m = m;
this.score = score;
}
}
public int getResultSize() {
return resultlist.size();
}
......@@ -319,6 +304,21 @@ public class FuzzySearchAdapter extends BaseAdapter {
this.settingsManager = settingsManager;
}
public class ViewHolder {
TextView label;
LinearLayout rowContainer;
}
public class ScoredMarker {
Marker m;
int score;
public ScoredMarker(int score, Marker m) {
this.m = m;
this.score = score;
}
}
public class MarkerScoreComparator implements Comparator<ScoredMarker> {
public int compare(ScoredMarker m1, ScoredMarker m2) {
return m1.score - m2.score;
......
......@@ -6,15 +6,13 @@ import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.content.res.Resources;
import android.preference.PreferenceManager;
import app.insti.R;
public class SettingsManager implements OnSharedPreferenceChangeListener{
public class SettingsManager implements OnSharedPreferenceChangeListener {
private SharedPreferences sharedPrefs;
private String muteKey;
private String residencesKey;
private String lastUpdatedKey;
public SettingsManager(Context context){
public SettingsManager(Context context) {
sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
sharedPrefs.registerOnSharedPreferenceChangeListener(this);
Resources res = context.getResources();
......@@ -23,11 +21,11 @@ public class SettingsManager implements OnSharedPreferenceChangeListener{
lastUpdatedKey = "lastupdated";
}
public boolean isMuted(){
public boolean isMuted() {
return sharedPrefs.getBoolean(muteKey, false);
}
public boolean showResidences(){
public boolean showResidences() {
return sharedPrefs.getBoolean(residencesKey, true);
}
......
......@@ -7,26 +7,10 @@ import java.util.ArrayList;
import java.util.Arrays;
public class Marker {
private int id;
private String name;
private String shortName;
private PointF point;
private int groupIndex;
private boolean showDefault;
private String description;
private String tag;
private String imageUri;
private int parentId;
private String parentRel;
private int[] childIds;
private long lat;
private long lng;
public static final int COLOR_BLUE = Color.rgb(75, 186, 238);
public static final int COLOR_YELLOW = Color.rgb(255, 186, 0);
public static final int COLOR_GREEN = Color.rgb(162, 208, 104);
public static final int COLOR_GRAY = Color.rgb(156, 156, 156);
public static final int DEPARTMENTS = 1;
public static final int HOSTELS = 2;
public static final int RESIDENCES = 3;
......@@ -39,7 +23,6 @@ public class Marker {
public static final int GATES = 10;
public static final int PRINT = 11;
public static final int LABS = 12;
private static final String DEPARTMENTS_NAME = "Departments";
private static final String HOSTELS_NAME = "Hostels";
private static final String RESIDENCES_NAME = "Residences";
......@@ -52,6 +35,20 @@ public class Marker {
private static final String GATES_NAME = "Gates";
private static final String PRINT_NAME = "Printer facility";
private static final String LABS_NAME = "Labs";
private int id;
private String name;
private String shortName;
private PointF point;
private int groupIndex;
private boolean showDefault;
private String description;
private String tag;
private String imageUri;
private int parentId;
private String parentRel;
private int[] childIds;
private long lat;
private long lng;
public Marker(String name, String shortName, float x, float y,
int groupIndex, String description) {
......@@ -85,12 +82,12 @@ public class Marker {
return -10;
}
Integer[] yellowGroup = new Integer[] { HOSTELS };
Integer[] blueGroup = new Integer[] { DEPARTMENTS, LABS,
HALLS_N_AUDITORIUMS };
Integer[] greenGroup = new Integer[] { RESIDENCES };
Integer[] purpleGroup = new Integer[] { FOOD_STALLS, BANKS_N_ATMS,
SCHOOLS, SPORTS, OTHERS, GATES, PRINT };
Integer[] yellowGroup = new Integer[]{HOSTELS};
Integer[] blueGroup = new Integer[]{DEPARTMENTS, LABS,
HALLS_N_AUDITORIUMS};
Integer[] greenGroup = new Integer[]{RESIDENCES};
Integer[] purpleGroup = new Integer[]{FOOD_STALLS, BANKS_N_ATMS,
SCHOOLS, SPORTS, OTHERS, GATES, PRINT};
ArrayList<Integer> yellowList = new ArrayList<Integer>(
Arrays.asList(yellowGroup));
......@@ -114,46 +111,11 @@ public class Marker {
return 0;
}
public int getColor() {
int group = this.groupIndex;
return getColor(group);
}
public String getGroupName() {
switch (groupIndex) {
case DEPARTMENTS:
return DEPARTMENTS_NAME;
case HOSTELS:
return HOSTELS_NAME;
case RESIDENCES:
return RESIDENCES_NAME;
case HALLS_N_AUDITORIUMS:
return HALLS_N_AUDITORIUMS_NAME;
case FOOD_STALLS:
return FOOD_STALLS_NAME;
case BANKS_N_ATMS:
return BANKS_N_ATMS_NAME;
case SCHOOLS:
return SCHOOLS_NAME;
case SPORTS:
return SPORTS_NAME;
case OTHERS:
return OTHERS_NAME;
case GATES:
return GATES_NAME;
case PRINT:
return PRINT_NAME;
case LABS:
return LABS_NAME;
}
return "";
}
public static String[] getGroupNames() {
String[] groupNames = { DEPARTMENTS_NAME, LABS_NAME,
String[] groupNames = {DEPARTMENTS_NAME, LABS_NAME,
HALLS_N_AUDITORIUMS_NAME, HOSTELS_NAME, RESIDENCES_NAME,
FOOD_STALLS_NAME, BANKS_N_ATMS_NAME, SCHOOLS_NAME, SPORTS_NAME,
PRINT_NAME, GATES_NAME, OTHERS_NAME };
PRINT_NAME, GATES_NAME, OTHERS_NAME};
return groupNames;
}
......@@ -187,6 +149,41 @@ public class Marker {
return result;
}
public int getColor() {
int group = this.groupIndex;
return getColor(group);
}
public String getGroupName() {
switch (groupIndex) {
case DEPARTMENTS:
return DEPARTMENTS_NAME;
case HOSTELS:
return HOSTELS_NAME;
case RESIDENCES:
return RESIDENCES_NAME;
case HALLS_N_AUDITORIUMS:
return HALLS_N_AUDITORIUMS_NAME;
case FOOD_STALLS:
return FOOD_STALLS_NAME;
case BANKS_N_ATMS:
return BANKS_N_ATMS_NAME;
case SCHOOLS:
return SCHOOLS_NAME;
case SPORTS:
return SPORTS_NAME;
case OTHERS:
return OTHERS_NAME;
case GATES:
return GATES_NAME;
case PRINT:
return PRINT_NAME;
case LABS:
return LABS_NAME;
}
return "";
}
public int getId() {
return id;
}
......
......@@ -7,20 +7,19 @@ import android.view.View;
import android.view.ViewGroup;
import android.view.animation.Interpolator;
import com.mrane.navigation.SlidingUpPanelLayout.PanelSlideListener;
import app.insti.R;
import app.insti.fragment.MapFragment;
import com.mrane.navigation.SlidingUpPanelLayout.PanelSlideListener;
public class CardSlideListener implements PanelSlideListener,
ValueAnimator.AnimatorUpdateListener {
private static final long TIME_ANIMATION_SHOW = 250;
private MapFragment mainActivity;
private SlidingUpPanelLayout slidingLayout;
private EndDetectScrollView scrollView;
private ValueAnimator animator;
private static final long TIME_ANIMATION_SHOW = 250;
public CardSlideListener(MapFragment mainActivity) {
this.mainActivity = mainActivity;
slidingLayout = mainActivity.getSlidingLayout();
......
......@@ -8,22 +8,8 @@ import android.widget.ScrollView;
public class EndDetectScrollView extends ScrollView {
private enum ScrollState {
TOP, BETWEEN, BOTTOM
}
private ScrollState mCurrState = ScrollState.TOP;
private boolean scrollable = true;
public interface ScrollEndListener {
public void onScrollHitBottom();
public void onScrollHitTop();
public void onScrollInBetween();
}
private ScrollEndListener listener;
public EndDetectScrollView(Context context) {
......@@ -109,4 +95,16 @@ public class EndDetectScrollView extends ScrollView {
else
return super.onInterceptTouchEvent(ev);
}
private enum ScrollState {
TOP, BETWEEN, BOTTOM
}
public interface ScrollEndListener {
public void onScrollHitBottom();
public void onScrollHitTop();
public void onScrollInBetween();
}
}
......@@ -23,9 +23,6 @@ import android.view.MotionEvent;
import android.view.View;
import android.view.animation.BounceInterpolator;
import app.insti.R.drawable;
import app.insti.fragment.MapFragment;
import com.mrane.campusmap.SettingsManager;
import com.mrane.data.Building;
import com.mrane.data.Marker;
......@@ -37,7 +34,15 @@ import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import app.insti.R.drawable;
import app.insti.fragment.MapFragment;
public class CampusMapView extends SubsamplingScaleImageView {
private static int RATIO_SHOW_PIN = 10;
private static int RATIO_SHOW_PIN_TEXT = 20;
private static long DURATION_MARKER_ANIMATION = 500;
private static long DELAY_MARKER_ANIMATION = 675;
private static float MAX_SCALE = 1F;
private MapFragment mainActivity;
private HashMap<String, Marker> data;
private Collection<Marker> markerList;
......@@ -65,11 +70,6 @@ public class CampusMapView extends SubsamplingScaleImageView {
private Paint textPaint;
private Paint strokePaint;
private Rect bounds = new Rect();
private static int RATIO_SHOW_PIN = 10;
private static int RATIO_SHOW_PIN_TEXT = 20;
private static long DURATION_MARKER_ANIMATION = 500;
private static long DELAY_MARKER_ANIMATION = 675;
private static float MAX_SCALE = 1F;
private DisplayMetrics displayMetrics;
private float density;
private boolean isFirstLoad = true;
......@@ -84,6 +84,22 @@ public class CampusMapView extends SubsamplingScaleImageView {
initialise();
}
public static int getShowPinRatio() {
return RATIO_SHOW_PIN;
}
public static void setShowPinRatio(int ratio) {
RATIO_SHOW_PIN = ratio;
}
public static int getShowPinTextRatio() {
return RATIO_SHOW_PIN_TEXT;
}
public static void setShowPinTextRatio(int ratio) {
RATIO_SHOW_PIN_TEXT = ratio;
}
private void initialise() {
displayMetrics = getResources().getDisplayMetrics();
density = displayMetrics.density;
......@@ -115,7 +131,7 @@ public class CampusMapView extends SubsamplingScaleImageView {
}
}
public void setSettingsManager(SettingsManager sm){
public void setSettingsManager(SettingsManager sm) {
settingsManager = sm;
}
......@@ -158,7 +174,7 @@ public class CampusMapView extends SubsamplingScaleImageView {
drawable.marker_gray_s, options);
grayLockedMarker = BitmapFactory.decodeResource(getResources(),
drawable.marker_gray_h, options);
w = pointerWidth*density;
w = pointerWidth * density;
h = bluePointer.getScaledHeight(displayMetrics) * (w / bluePointer.getScaledWidth(displayMetrics));
bluePointer = Bitmap.createScaledBitmap(bluePointer, (int) w, (int) h,
......@@ -245,35 +261,19 @@ public class CampusMapView extends SubsamplingScaleImageView {
}
}
public static int getShowPinRatio() {
return RATIO_SHOW_PIN;
}
public static void setShowPinRatio(int ratio) {
RATIO_SHOW_PIN = ratio;
}
public static int getShowPinTextRatio() {
return RATIO_SHOW_PIN_TEXT;
}
public static void setShowPinTextRatio(int ratio) {
RATIO_SHOW_PIN_TEXT = ratio;
}
public Marker getResultMarker() {
return resultMarker;
}
public void setResultMarker(Marker marker) {
resultMarker = marker;
}
@Deprecated
public Marker getHighlightedMarker() {
return getResultMarker();
}
public void setResultMarker(Marker marker) {
resultMarker = marker;
}
public boolean isResultMarker(Marker marker) {
if (resultMarker == null)
return false;
......@@ -411,7 +411,7 @@ public class CampusMapView extends SubsamplingScaleImageView {
private boolean shouldShowUp(Marker marker) {
boolean result = true;
if(marker.getGroupIndex() == Marker.RESIDENCES){
if (marker.getGroupIndex() == Marker.RESIDENCES) {
result = settingsManager.showResidences();
}
if (marker instanceof Building) {
......@@ -464,7 +464,7 @@ public class CampusMapView extends SubsamplingScaleImageView {
else
name = marker.getShortName();
Paint temp = new Paint(textPaint);
if(marker.getGroupIndex() == Marker.RESIDENCES) temp.setTextSize(12*density);
if (marker.getGroupIndex() == Marker.RESIDENCES) temp.setTextSize(12 * density);
textPaint.getTextBounds(name, 0, name.length() - 1, bounds);
float tX = vPin.x + pin.getWidth();
float tY = vPin.y + bounds.height() / 2;
......@@ -531,9 +531,9 @@ public class CampusMapView extends SubsamplingScaleImageView {
if (color == Marker.COLOR_BLUE) {
markerBitmap = blueMarker;
if (isAddedMarker(marker)){
if (isAddedMarker(marker)) {
markerBitmap = blueLockedMarker;
if(convoMarkerList.contains(marker)) markerBitmap = blueConvoMarker;
if (convoMarkerList.contains(marker)) markerBitmap = blueConvoMarker;
}
} else if (color == Marker.COLOR_YELLOW) {
markerBitmap = yellowMarker;
......@@ -607,7 +607,7 @@ public class CampusMapView extends SubsamplingScaleImageView {
valAnim.start();
}
public Runnable getScaleAnim(final float scale){
public Runnable getScaleAnim(final float scale) {
Runnable anim = new Runnable() {
public void run() {
AnimationBuilder animation = animateScale(scale);
......@@ -623,7 +623,7 @@ public class CampusMapView extends SubsamplingScaleImageView {
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
if(getTargetMinScale() > getScale()){
if (getTargetMinScale() > getScale()) {
setScaleAndCenter(getTargetMinScale(), getCenter());
}
super.onSizeChanged(w, h, oldw, oldh);
......@@ -656,16 +656,14 @@ public class CampusMapView extends SubsamplingScaleImageView {
public boolean onTouch(View view, MotionEvent motionEvent) {
final float targetMinScale = getTargetMinScale();
int action = motionEvent.getAction();
if(action== MotionEvent.ACTION_DOWN){
if(motionEvent.getX()<20*density){
if (action == MotionEvent.ACTION_DOWN) {
if (motionEvent.getX() < 20 * density) {
getParent().requestDisallowInterceptTouchEvent(false);
return true;
}
else{
} else {
// CampusMapView.this.setPanEnabled(true);
}
}
else if(action == MotionEvent.ACTION_UP){
} else if (action == MotionEvent.ACTION_UP) {
CampusMapView.this.setPanEnabled(true);
}
if (targetMinScale > getScale()) {
......@@ -674,7 +672,7 @@ public class CampusMapView extends SubsamplingScaleImageView {
if (action == MotionEvent.ACTION_UP) {
Runnable anim = getScaleAnim(targetMinScale);
if(isImageReady()) anim.run();
if (isImageReady()) anim.run();
}
return true;
}
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -39,6 +39,6 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminate="true"
android:theme="@style/BlueAccent"/>
android:theme="@style/BlueAccent" />
</RelativeLayout>
</RelativeLayout>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment