Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
I
InstiApp
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
RAHUL SHARMA
InstiApp
Commits
63892b0d
Commit
63892b0d
authored
Jul 01, 2018
by
Varun Patil
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Implement user card in body
parent
6a81f4a9
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
164 additions
and
10 deletions
+164
-10
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/adapter/UserAdapter.java
...java/in/ac/iitb/gymkhana/iitbapp/adapter/UserAdapter.java
+74
-0
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/Body.java
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/Body.java
+13
-1
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/Role.java
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/Role.java
+9
-9
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/User.java
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/User.java
+13
-0
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/BodyFragment.java
...va/in/ac/iitb/gymkhana/iitbapp/fragment/BodyFragment.java
+34
-0
app/src/main/res/layout/fragment_body.xml
app/src/main/res/layout/fragment_body.xml
+21
-0
No files found.
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/adapter/UserAdapter.java
0 → 100644
View file @
63892b0d
package
in.ac.iitb.gymkhana.iitbapp.adapter
;
import
android.content.Context
;
import
android.support.v7.widget.RecyclerView
;
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.List
;
import
in.ac.iitb.gymkhana.iitbapp.ItemClickListener
;
import
in.ac.iitb.gymkhana.iitbapp.R
;
import
in.ac.iitb.gymkhana.iitbapp.data.Body
;
import
in.ac.iitb.gymkhana.iitbapp.data.Role
;
import
in.ac.iitb.gymkhana.iitbapp.data.User
;
public
class
UserAdapter
extends
RecyclerView
.
Adapter
<
UserAdapter
.
ViewHolder
>
{
private
List
<
User
>
userList
;
private
ItemClickListener
itemClickListener
;
private
Context
context
;
public
UserAdapter
(
List
<
User
>
userList
,
ItemClickListener
itemClickListener
){
this
.
userList
=
userList
;
this
.
itemClickListener
=
itemClickListener
;
}
@Override
public
ViewHolder
onCreateViewHolder
(
ViewGroup
parent
,
int
viewType
)
{
context
=
parent
.
getContext
();
View
v
=
LayoutInflater
.
from
(
context
)
.
inflate
(
R
.
layout
.
role_card
,
parent
,
false
);
final
ViewHolder
postViewHolder
=
new
ViewHolder
(
v
);
v
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
view
)
{
itemClickListener
.
onItemClick
(
view
,
postViewHolder
.
getAdapterPosition
());
}
});
return
postViewHolder
;
}
@Override
public
void
onBindViewHolder
(
ViewHolder
holder
,
int
position
)
{
User
user
=
userList
.
get
(
position
);
holder
.
userName
.
setText
(
user
.
getUserName
());
holder
.
role
.
setText
(
user
.
getCurrentRole
());
Picasso
.
with
(
context
).
load
(
user
.
getUserProfilePictureUrl
()).
resize
(
120
,
0
).
into
(
holder
.
image
);
}
@Override
public
int
getItemCount
()
{
return
userList
.
size
();
}
public
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
public
TextView
userName
;
public
TextView
role
;
public
ImageView
image
;
public
ViewHolder
(
View
itemView
)
{
super
(
itemView
);
userName
=
(
TextView
)
itemView
.
findViewById
(
R
.
id
.
role_card_body
);
role
=
(
TextView
)
itemView
.
findViewById
(
R
.
id
.
role_card_role
);
image
=
(
ImageView
)
itemView
.
findViewById
(
R
.
id
.
role_card_avatar
);
}
}
}
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/Body.java
View file @
63892b0d
...
@@ -52,8 +52,11 @@ public class Body {
...
@@ -52,8 +52,11 @@ public class Body {
@ColumnInfo
(
name
=
"user_follows"
)
@ColumnInfo
(
name
=
"user_follows"
)
@SerializedName
(
"user_follows"
)
@SerializedName
(
"user_follows"
)
boolean
bodyUserFollows
;
boolean
bodyUserFollows
;
@ColumnInfo
(
name
=
"roles"
)
@SerializedName
(
"roles"
)
List
<
Role
>
bodyRoles
;
public
Body
(
String
bodyID
,
String
bodyStrID
,
String
bodyName
,
String
bodyShortDescription
,
String
bodyDescription
,
String
bodyImageURL
,
List
<
Body
>
bodyChildren
,
List
<
Body
>
bodyParents
,
List
<
Event
>
bodyEvents
,
int
bodyFollowersCount
,
String
bodyWebsiteURL
,
String
bodyBlogURL
,
Boolean
bodyUserFollow
s
)
{
public
Body
(
String
bodyID
,
String
bodyStrID
,
String
bodyName
,
String
bodyShortDescription
,
String
bodyDescription
,
String
bodyImageURL
,
List
<
Body
>
bodyChildren
,
List
<
Body
>
bodyParents
,
List
<
Event
>
bodyEvents
,
int
bodyFollowersCount
,
String
bodyWebsiteURL
,
String
bodyBlogURL
,
boolean
bodyUserFollows
,
List
<
Role
>
bodyRole
s
)
{
this
.
bodyID
=
bodyID
;
this
.
bodyID
=
bodyID
;
this
.
bodyStrID
=
bodyStrID
;
this
.
bodyStrID
=
bodyStrID
;
this
.
bodyName
=
bodyName
;
this
.
bodyName
=
bodyName
;
...
@@ -67,6 +70,7 @@ public class Body {
...
@@ -67,6 +70,7 @@ public class Body {
this
.
bodyWebsiteURL
=
bodyWebsiteURL
;
this
.
bodyWebsiteURL
=
bodyWebsiteURL
;
this
.
bodyBlogURL
=
bodyBlogURL
;
this
.
bodyBlogURL
=
bodyBlogURL
;
this
.
bodyUserFollows
=
bodyUserFollows
;
this
.
bodyUserFollows
=
bodyUserFollows
;
this
.
bodyRoles
=
bodyRoles
;
}
}
public
String
getBodyID
()
{
public
String
getBodyID
()
{
...
@@ -172,4 +176,12 @@ public class Body {
...
@@ -172,4 +176,12 @@ public class Body {
public
void
setBodyUserFollows
(
boolean
bodyUserFollows
)
{
public
void
setBodyUserFollows
(
boolean
bodyUserFollows
)
{
this
.
bodyUserFollows
=
bodyUserFollows
;
this
.
bodyUserFollows
=
bodyUserFollows
;
}
}
public
List
<
Role
>
getBodyRoles
()
{
return
bodyRoles
;
}
public
void
setBodyRoles
(
List
<
Role
>
bodyRoles
)
{
this
.
bodyRoles
=
bodyRoles
;
}
}
}
\ No newline at end of file
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/Role.java
View file @
63892b0d
...
@@ -50,11 +50,11 @@ public class Role {
...
@@ -50,11 +50,11 @@ public class Role {
@SerializedName
(
"users"
)
@SerializedName
(
"users"
)
List
<
String
>
roleUsers
;
List
<
String
>
roleUsers
;
@ColumnInfo
(
name
=
"users_detail
s
"
)
@ColumnInfo
(
name
=
"users_detail"
)
@SerializedName
(
"users_detail
s
"
)
@SerializedName
(
"users_detail"
)
List
<
User
>
roleUsersDetail
s
;
List
<
User
>
roleUsersDetail
;
public
Role
(
String
roleID
,
String
roleName
,
boolean
roleInheritable
,
String
roleBody
,
Body
roleBodyDetails
,
List
<
Body
>
roleBodies
,
List
<
String
>
rolePermissions
,
List
<
String
>
roleUsers
,
List
<
User
>
roleUsersDetail
s
)
{
public
Role
(
String
roleID
,
String
roleName
,
boolean
roleInheritable
,
String
roleBody
,
Body
roleBodyDetails
,
List
<
Body
>
roleBodies
,
List
<
String
>
rolePermissions
,
List
<
String
>
roleUsers
,
List
<
User
>
roleUsersDetail
)
{
this
.
roleID
=
roleID
;
this
.
roleID
=
roleID
;
this
.
roleName
=
roleName
;
this
.
roleName
=
roleName
;
this
.
roleInheritable
=
roleInheritable
;
this
.
roleInheritable
=
roleInheritable
;
...
@@ -63,7 +63,7 @@ public class Role {
...
@@ -63,7 +63,7 @@ public class Role {
this
.
roleBodies
=
roleBodies
;
this
.
roleBodies
=
roleBodies
;
this
.
rolePermissions
=
rolePermissions
;
this
.
rolePermissions
=
rolePermissions
;
this
.
roleUsers
=
roleUsers
;
this
.
roleUsers
=
roleUsers
;
this
.
roleUsersDetail
s
=
roleUsersDetails
;
this
.
roleUsersDetail
=
roleUsersDetail
;
}
}
public
String
getRoleID
()
{
public
String
getRoleID
()
{
...
@@ -130,11 +130,11 @@ public class Role {
...
@@ -130,11 +130,11 @@ public class Role {
this
.
roleUsers
=
roleUsers
;
this
.
roleUsers
=
roleUsers
;
}
}
public
List
<
User
>
getRoleUsersDetail
s
()
{
public
List
<
User
>
getRoleUsersDetail
()
{
return
roleUsersDetail
s
;
return
roleUsersDetail
;
}
}
public
void
setRoleUsersDetail
s
(
List
<
User
>
roleUsersDetails
)
{
public
void
setRoleUsersDetail
(
List
<
User
>
roleUsersDetail
)
{
this
.
roleUsersDetail
s
=
roleUsersDetails
;
this
.
roleUsersDetail
=
roleUsersDetail
;
}
}
}
}
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/data/User.java
View file @
63892b0d
...
@@ -2,6 +2,7 @@ package in.ac.iitb.gymkhana.iitbapp.data;
...
@@ -2,6 +2,7 @@ package in.ac.iitb.gymkhana.iitbapp.data;
import
android.arch.persistence.room.ColumnInfo
;
import
android.arch.persistence.room.ColumnInfo
;
import
android.arch.persistence.room.Entity
;
import
android.arch.persistence.room.Entity
;
import
android.arch.persistence.room.Ignore
;
import
android.arch.persistence.room.PrimaryKey
;
import
android.arch.persistence.room.PrimaryKey
;
import
android.util.Log
;
import
android.util.Log
;
...
@@ -64,6 +65,10 @@ public class User {
...
@@ -64,6 +65,10 @@ public class User {
@SerializedName
(
"hostel"
)
@SerializedName
(
"hostel"
)
String
hostel
;
String
hostel
;
/** Not in database */
@Ignore
String
currentRole
;
public
User
(
int
db_id
,
String
userID
,
String
userName
,
String
userProfilePictureUrl
,
List
<
Event
>
userInterestedEvents
,
List
<
Event
>
userGoingEvents
,
String
userEmail
,
String
userRollNumber
,
String
userContactNumber
,
String
userAbout
,
List
<
Body
>
userFollowedBodies
,
List
<
String
>
userFollowedBodiesID
,
List
<
Role
>
userRoles
,
List
<
Role
>
userInstituteRoles
,
String
userWebsiteURL
,
String
userLDAPId
,
String
hostel
)
{
public
User
(
int
db_id
,
String
userID
,
String
userName
,
String
userProfilePictureUrl
,
List
<
Event
>
userInterestedEvents
,
List
<
Event
>
userGoingEvents
,
String
userEmail
,
String
userRollNumber
,
String
userContactNumber
,
String
userAbout
,
List
<
Body
>
userFollowedBodies
,
List
<
String
>
userFollowedBodiesID
,
List
<
Role
>
userRoles
,
List
<
Role
>
userInstituteRoles
,
String
userWebsiteURL
,
String
userLDAPId
,
String
hostel
)
{
this
.
db_id
=
db_id
;
this
.
db_id
=
db_id
;
this
.
userID
=
userID
;
this
.
userID
=
userID
;
...
@@ -216,6 +221,14 @@ public class User {
...
@@ -216,6 +221,14 @@ public class User {
this
.
hostel
=
hostel
;
this
.
hostel
=
hostel
;
}
}
public
String
getCurrentRole
()
{
return
currentRole
;
}
public
void
setCurrentRole
(
String
currentRole
)
{
this
.
currentRole
=
currentRole
;
}
@Override
@Override
public
String
toString
()
{
public
String
toString
()
{
return
new
Gson
().
toJson
(
this
);
return
new
Gson
().
toJson
(
this
);
...
...
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/BodyFragment.java
View file @
63892b0d
...
@@ -10,6 +10,7 @@ import android.support.v4.app.FragmentTransaction;
...
@@ -10,6 +10,7 @@ import android.support.v4.app.FragmentTransaction;
import
android.support.v7.widget.LinearLayoutManager
;
import
android.support.v7.widget.LinearLayoutManager
;
import
android.support.v7.widget.RecyclerView
;
import
android.support.v7.widget.RecyclerView
;
import
android.support.v4.widget.SwipeRefreshLayout
;
import
android.support.v4.widget.SwipeRefreshLayout
;
import
android.util.Log
;
import
android.view.LayoutInflater
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.ViewGroup
;
...
@@ -22,6 +23,7 @@ import android.widget.Toast;
...
@@ -22,6 +23,7 @@ import android.widget.Toast;
import
com.google.gson.Gson
;
import
com.google.gson.Gson
;
import
com.squareup.picasso.Picasso
;
import
com.squareup.picasso.Picasso
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
in.ac.iitb.gymkhana.iitbapp.Constants
;
import
in.ac.iitb.gymkhana.iitbapp.Constants
;
...
@@ -30,11 +32,14 @@ import in.ac.iitb.gymkhana.iitbapp.MainActivity;
...
@@ -30,11 +32,14 @@ import in.ac.iitb.gymkhana.iitbapp.MainActivity;
import
in.ac.iitb.gymkhana.iitbapp.R
;
import
in.ac.iitb.gymkhana.iitbapp.R
;
import
in.ac.iitb.gymkhana.iitbapp.ShareURLMaker
;
import
in.ac.iitb.gymkhana.iitbapp.ShareURLMaker
;
import
in.ac.iitb.gymkhana.iitbapp.adapter.FeedAdapter
;
import
in.ac.iitb.gymkhana.iitbapp.adapter.FeedAdapter
;
import
in.ac.iitb.gymkhana.iitbapp.adapter.UserAdapter
;
import
in.ac.iitb.gymkhana.iitbapp.api.RetrofitInterface
;
import
in.ac.iitb.gymkhana.iitbapp.api.RetrofitInterface
;
import
in.ac.iitb.gymkhana.iitbapp.api.ServiceGenerator
;
import
in.ac.iitb.gymkhana.iitbapp.api.ServiceGenerator
;
import
in.ac.iitb.gymkhana.iitbapp.data.AppDatabase
;
import
in.ac.iitb.gymkhana.iitbapp.data.AppDatabase
;
import
in.ac.iitb.gymkhana.iitbapp.data.Body
;
import
in.ac.iitb.gymkhana.iitbapp.data.Body
;
import
in.ac.iitb.gymkhana.iitbapp.data.Event
;
import
in.ac.iitb.gymkhana.iitbapp.data.Event
;
import
in.ac.iitb.gymkhana.iitbapp.data.Role
;
import
in.ac.iitb.gymkhana.iitbapp.data.User
;
import
retrofit2.Call
;
import
retrofit2.Call
;
import
retrofit2.Callback
;
import
retrofit2.Callback
;
import
retrofit2.Response
;
import
retrofit2.Response
;
...
@@ -212,6 +217,35 @@ public class BodyFragment extends Fragment {
...
@@ -212,6 +217,35 @@ public class BodyFragment extends Fragment {
});
});
eventRecyclerView
.
setAdapter
(
eventAdapter
);
eventRecyclerView
.
setAdapter
(
eventAdapter
);
eventRecyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
getContext
()));
eventRecyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
getContext
()));
final
List
<
Role
>
roles
=
body
.
getBodyRoles
();
final
List
<
User
>
users
=
new
ArrayList
();
for
(
Role
role
:
roles
)
{
if
(
role
.
getRoleUsersDetail
()
!=
null
)
{
for
(
User
user:
role
.
getRoleUsersDetail
())
{
user
.
setCurrentRole
(
role
.
getRoleName
());
users
.
add
(
user
);
}
}
}
RecyclerView
userRecyclerView
=
(
RecyclerView
)
getActivity
().
findViewById
(
R
.
id
.
people_card_recycler_view
);
UserAdapter
userAdapter
=
new
UserAdapter
(
users
,
new
ItemClickListener
()
{
@Override
public
void
onItemClick
(
View
v
,
int
position
)
{
User
user
=
users
.
get
(
position
);
/*Bundle bundle = new Bundle();
bundle.putString(Constants.EVENT_JSON, new Gson().toJson(event));
EventFragment eventFragment = new EventFragment();
eventFragment.setArguments(bundle);
FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
ft.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_left, R.anim.slide_in_right, R.anim.slide_out_right);
ft.replace(R.id.framelayout_for_fragment, eventFragment, eventFragment.getTag());
ft.addToBackStack(eventFragment.getTag());
ft.commit();*/
}
});
userRecyclerView
.
setAdapter
(
userAdapter
);
userRecyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
getContext
()));
}
}
private
class
updateDbBody
extends
AsyncTask
<
Body
,
Void
,
Integer
>
{
private
class
updateDbBody
extends
AsyncTask
<
Body
,
Void
,
Integer
>
{
...
...
app/src/main/res/layout/fragment_body.xml
View file @
63892b0d
...
@@ -133,6 +133,27 @@
...
@@ -133,6 +133,27 @@
android:layout_marginTop=
"10dp"
android:layout_marginTop=
"10dp"
android:nestedScrollingEnabled=
"false"
/>
android:nestedScrollingEnabled=
"false"
/>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/org_card_recycler_view"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10dp"
android:nestedScrollingEnabled=
"false"
/>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/people_card_recycler_view"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10dp"
android:nestedScrollingEnabled=
"false"
/>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/parentorg_card_recycler_view"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10dp"
android:nestedScrollingEnabled=
"false"
/>
</LinearLayout>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
</android.support.v4.widget.NestedScrollView>
</android.support.v4.widget.SwipeRefreshLayout>
</android.support.v4.widget.SwipeRefreshLayout>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment