diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 35659d6..a5d4cab 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -12,12 +12,7 @@ - + diff --git a/.idea/markdown-navigator.xml b/.idea/markdown-navigator.xml new file mode 100644 index 0000000..d819570 --- /dev/null +++ b/.idea/markdown-navigator.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/markdown-navigator/profiles_settings.xml b/.idea/markdown-navigator/profiles_settings.xml new file mode 100644 index 0000000..57927c5 --- /dev/null +++ b/.idea/markdown-navigator/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 4fbe0a1..39152ba 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,9 +1,10 @@ apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' apply plugin: 'com.google.gms.google-services' android { - compileSdkVersion 'Google Inc.:Google APIs:21' - buildToolsVersion "22.0.1" + compileSdkVersion 21 + buildToolsVersion '25.0.0' defaultConfig { applicationId "com.ap.collegespacev2" @@ -21,8 +22,19 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - testCompile 'junit:junit:4.12' - compile 'com.android.support:appcompat-v7:21.+' + compile fileTree(include: ['*.jar'], dir: 'libs') + compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version" + compile 'com.android.support:appcompat-v7:21.0.3' + compile 'com.android.support:support-v4:23.2.1' compile 'com.google.android.gms:play-services-gcm:7.5.0' + compile 'com.android.support.constraint:constraint-layout:1.0.2' + compile 'com.android.support:recyclerview-v7:21.0.3' + compile 'com.android.support:cardview-v7:21.0.3' + compile 'com.squareup.retrofit2:retrofit:2.3.0' + compile 'com.squareup.retrofit2:converter-gson:2.3.0' + compile 'com.github.bumptech.glide:glide:4.0.0-RC1' + testCompile 'junit:junit:4.12' +} +repositories { + mavenCentral() } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 5b82eaf..29122e6 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -2,13 +2,16 @@ - - + + - + + - + android:name=".Home" + android:label="@string/app_name" /> - + android:name=".Settings" + android:label="@string/app_name" /> - + android:name=".NSITulator" + android:label="@string/app_name" /> - + android:name=".Bookmarks" + android:label="@string/app_name" /> - + android:name=".Calculator" + android:label="@string/app_name" /> - + android:name=".BaseActivity" + android:label="@string/app_name" /> + - + android:name=".PostDetails" + android:configChanges="keyboardHidden|orientation|screenSize" + android:theme="@style/ThemeFading" /> + android:name=".Gcm.GcmBroadcastReceiver" + android:permission="com.google.android.c2dm.permission.SEND"> + + - + + + + + - + + \ No newline at end of file diff --git a/app/src/main/java/com/ap/collegespacev2/Adapter/NsitPediaAdapter.java b/app/src/main/java/com/ap/collegespacev2/Adapter/NsitPediaAdapter.java new file mode 100644 index 0000000..6ab365e --- /dev/null +++ b/app/src/main/java/com/ap/collegespacev2/Adapter/NsitPediaAdapter.java @@ -0,0 +1,99 @@ +package com.ap.collegespacev2.Adapter; + +import android.content.Context; +import android.support.v7.widget.RecyclerView; +import android.text.Html; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.TextView; + +import com.ap.collegespacev2.Models.NpediaPosts; +import com.ap.collegespacev2.R; +import com.bumptech.glide.Glide; + + +import java.util.ArrayList; + +/** + * Created by anirudh on 26/07/17. + */ + +public class NsitPediaAdapter extends RecyclerView.Adapter { + + ArrayList arrayListPosts ; + Context mContext ; + OnItemCLickedListener onItemCLickedListener; + + public NsitPediaAdapter(ArrayList arrayListPosts, Context mContext , OnItemCLickedListener oicl) { + this.arrayListPosts = arrayListPosts; + this.mContext = mContext; + this.onItemCLickedListener = oicl ; + + } + public void updatePosts(ArrayList arrayListPosts){ + this.arrayListPosts = arrayListPosts ; + notifyDataSetChanged(); + } + public interface OnItemCLickedListener { + void onItemCLicked(View view , NpediaPosts thisPost); + } + @Override + public PostsViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { + LayoutInflater li = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + View itemView = li.inflate(R.layout.list_nsitpedia_posts , parent , false) ; + return new PostsViewHolder(itemView); + } + + @Override + public void onBindViewHolder(PostsViewHolder holder, int position) { + final NpediaPosts thisPost = arrayListPosts.get(position) ; + holder.tvTitle.setText(thisPost.getTitle()); + holder.tvDescription.setText(Html.fromHtml(thisPost.getExcerpt())); + holder.tvAuthor.setText(thisPost.getAuthor().getUsername()); + if(thisPost.getAuthor().getAvatar().equals("avatar")) { + Glide.with(mContext) + .load(R.drawable.ic_person) + .into(holder.ivAvatar); + }else{ + Glide.with(mContext) + .load(thisPost.getAuthor().getAvatar()) + .into(holder.ivAvatar); + } + + if(!thisPost.getFeatured_image().getGuid().equals("guid")){ + Glide.with(mContext) + .load(thisPost.getFeatured_image().getGuid()) + .into(holder.ivFeaturedImage) ; + + } + holder.itemView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + onItemCLickedListener.onItemCLicked(v , thisPost); + } + }); + + } + + @Override + public int getItemCount() { + return arrayListPosts.size(); + } + + class PostsViewHolder extends RecyclerView.ViewHolder{ + TextView tvTitle , tvAuthor , tvDescription ; + ImageView ivAvatar , ivFeaturedImage; + View itemView ; + public PostsViewHolder(View itemView) { + super(itemView); + tvTitle = (TextView) itemView.findViewById(R.id.tvTitle) ; + tvAuthor = (TextView) itemView.findViewById(R.id.tvPostersName) ; + tvDescription = (TextView) itemView.findViewById(R.id.tvDescription) ; + ivAvatar = (ImageView)itemView.findViewById(R.id.ivProfilePic) ; + ivFeaturedImage = (ImageView)itemView.findViewById(R.id.ivFeaturedImage) ; + this.itemView = itemView ; + } + } +} diff --git a/app/src/main/java/com/ap/collegespacev2/BaseActivity.java b/app/src/main/java/com/ap/collegespacev2/BaseActivity.java index d1bd156..42258e2 100644 --- a/app/src/main/java/com/ap/collegespacev2/BaseActivity.java +++ b/app/src/main/java/com/ap/collegespacev2/BaseActivity.java @@ -173,6 +173,7 @@ public void onItemClick(AdapterView parent, View view, int position, long id) switch (position) { case 0: toStart = new Intent(BaseActivity.this, Home.class); break; + case 1 : toStart = new Intent(BaseActivity.this , NsitPediaActivity.class) ; break ; case 2: toStart = new Intent(BaseActivity.this, Bookmarks.class); break; case 4: toStart = new Intent(BaseActivity.this, NSITulator.class); break; case 5: toStart = new Intent(BaseActivity.this, Settings.class); break; diff --git a/app/src/main/java/com/ap/collegespacev2/Helper/DBHelper.java b/app/src/main/java/com/ap/collegespacev2/Helper/DBHelper.java index 3c7dbc5..a942e2f 100644 --- a/app/src/main/java/com/ap/collegespacev2/Helper/DBHelper.java +++ b/app/src/main/java/com/ap/collegespacev2/Helper/DBHelper.java @@ -25,9 +25,10 @@ public class DBHelper extends SQLiteOpenHelper public static final String TABLE_UPDATES_DATE = "date"; public static final String TABLE_UPDATES_MODIFIED = "modified"; + public DBHelper(Context context) { - super(context, DATABASE_NAME, null, 1); + super(context, DATABASE_NAME, null, 2); } @Override @@ -40,6 +41,7 @@ public void onCreate(SQLiteDatabase db) TABLE_UPDATES_LINK + " TEXT, " + TABLE_UPDATES_DATE + " TEXT, " + TABLE_UPDATES_MODIFIED + " TEXT)"); + db.execSQL(NSITpediaTable.CMD_CREATE_TABLE); Log.i("DBHelper", "onCreate()"); } diff --git a/app/src/main/java/com/ap/collegespacev2/Helper/DBUtils.java b/app/src/main/java/com/ap/collegespacev2/Helper/DBUtils.java new file mode 100644 index 0000000..c4a2d59 --- /dev/null +++ b/app/src/main/java/com/ap/collegespacev2/Helper/DBUtils.java @@ -0,0 +1,18 @@ +package com.ap.collegespacev2.Helper; + +/** + * Created by anirudh on 29/07/17. + */ + +public class DBUtils { + public static final String CREATE_TABLE = " CREATE TABLE " ; + public static final String LBR = " ( " ; + public static final String RBR = " ) " ; + public static final String COMMA = " , " ; + public static final String SEMI = " ; " ; + + public static final String TYPE_INTEGER = " INTEGER " ; + public static final String TYPE_TEXT = " TEXT " ; + public static final String TYPE_INT_PK = " INTEGER PRIMARY KEY " ; + public static final String TYPE_BOOLEAN = " BOOLEAN " ; +} diff --git a/app/src/main/java/com/ap/collegespacev2/Helper/NSITpediaTable.java b/app/src/main/java/com/ap/collegespacev2/Helper/NSITpediaTable.java new file mode 100644 index 0000000..4cc90ca --- /dev/null +++ b/app/src/main/java/com/ap/collegespacev2/Helper/NSITpediaTable.java @@ -0,0 +1,124 @@ +package com.ap.collegespacev2.Helper; + +import android.content.ContentValues; +import android.content.Context; +import android.database.Cursor; +import android.database.SQLException; +import android.database.sqlite.SQLiteDatabase; +import android.util.Log; + +import com.ap.collegespacev2.Models.DBNPediaPosts; +import com.ap.collegespacev2.Models.NpediaPosts; + +import java.util.ArrayList; + +import static com.ap.collegespacev2.Helper.DBUtils.*; + +/** + * Created by anirudh on 29/07/17. + */ + +public class NSITpediaTable { + public static final String TAG = "NSITpediaTable"; + public static final String TABLE_NAME = "NSITpedia"; + + interface Columns { + String COL_ID = "id"; + String COL_EXCERPT = "excerpt"; + String COL_TITLE = "title"; + String COL_AUTHOR_NAME = "author"; + String COL_AUTHOR_AVATAR = "avatar"; + String COL_IMAGE = "image"; + String COL_CONTENT = "content" ; + + } + + public static final String CMD_CREATE_TABLE = + CREATE_TABLE + + TABLE_NAME + LBR + + Columns.COL_ID + TYPE_INT_PK + COMMA + + Columns.COL_TITLE + TYPE_TEXT + COMMA + + Columns.COL_EXCERPT + TYPE_TEXT + COMMA + + Columns.COL_CONTENT + TYPE_TEXT + COMMA + + Columns.COL_AUTHOR_NAME + TYPE_TEXT + + RBR + SEMI; + + + public static ArrayList getNPediaPosts(SQLiteDatabase db) { + + ArrayList posts = new ArrayList<>(); + ArrayList npediaPostses = new ArrayList<>() ; + Cursor csr = db.query(TABLE_NAME + , new String[]{ + Columns.COL_TITLE, + Columns.COL_ID, + Columns.COL_EXCERPT, + Columns.COL_AUTHOR_NAME , + Columns.COL_CONTENT + }, + null, + null, + null, + null, + Columns.COL_ID + " DESC" + ); + while (csr.moveToNext()) { + posts.add( + new DBNPediaPosts( + csr.getInt(csr.getColumnIndex(Columns.COL_ID)), + csr.getString(csr.getColumnIndex(Columns.COL_TITLE)), + csr.getString(csr.getColumnIndex(Columns.COL_EXCERPT)), + csr.getString(csr.getColumnIndex(Columns.COL_AUTHOR_NAME))) + ); + npediaPostses.add( + new NpediaPosts( + csr.getInt(csr.getColumnIndex(Columns.COL_ID)), + csr.getString(csr.getColumnIndex(Columns.COL_TITLE)), + csr.getString(csr.getColumnIndex(Columns.COL_CONTENT)) , + "link" , + new NpediaPosts.Author(csr.getString(csr.getColumnIndex(Columns.COL_AUTHOR_NAME)) , "avatar") , + csr.getString(csr.getColumnIndex(Columns.COL_EXCERPT)), + new NpediaPosts.FeaturedImage("guid") + ) + ) ; + + } + + Log.d(TAG, "getNPediaPosts: " + npediaPostses.size()); + return npediaPostses; + } + + + public static void addData(SQLiteDatabase db, int id, String title, String excerpt, String author_name , String content) { + + Cursor c = db.query(TABLE_NAME , + new String[]{Columns.COL_ID} , Columns.COL_ID + "= ?" + ,new String[]{String.valueOf(id)} + , null ,null ,null , null) ; + + if(c.moveToNext()){ + Log.d(TAG, "addData: Not added already exist : " + id); + return; + } + ContentValues cv = new ContentValues(); + cv.put(Columns.COL_ID, id); + cv.put(Columns.COL_TITLE, title); + cv.put(Columns.COL_EXCERPT, excerpt); + cv.put(Columns.COL_AUTHOR_NAME, author_name); + cv.put(Columns.COL_CONTENT , content); + db.insert(TABLE_NAME, null, cv); + + } + + public static void deleteTable(SQLiteDatabase db) { + db.delete(TABLE_NAME, null, null); + } + + public static void dropTable(SQLiteDatabase db) { + db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME); + } + + public static void createTable(SQLiteDatabase db) { + db.execSQL(CMD_CREATE_TABLE); + } +} diff --git a/app/src/main/java/com/ap/collegespacev2/Helper/NsitPediaApi.java b/app/src/main/java/com/ap/collegespacev2/Helper/NsitPediaApi.java new file mode 100644 index 0000000..e0a28b6 --- /dev/null +++ b/app/src/main/java/com/ap/collegespacev2/Helper/NsitPediaApi.java @@ -0,0 +1,18 @@ +package com.ap.collegespacev2.Helper; + +import com.ap.collegespacev2.Models.NpediaPosts; + +import java.util.ArrayList; + +import retrofit2.Call; +import retrofit2.http.GET; + +/** + * Created by anirudh on 26/07/17. + */ + +public interface NsitPediaApi { + + @GET("posts") + Call> getPosts() ; +} diff --git a/app/src/main/java/com/ap/collegespacev2/Launcher.java b/app/src/main/java/com/ap/collegespacev2/Launcher.java index 28ed7dd..1ce9d34 100644 --- a/app/src/main/java/com/ap/collegespacev2/Launcher.java +++ b/app/src/main/java/com/ap/collegespacev2/Launcher.java @@ -1,5 +1,6 @@ package com.ap.collegespacev2; +import android.app.ProgressDialog; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; diff --git a/app/src/main/java/com/ap/collegespacev2/Models/DBNPediaPosts.kt b/app/src/main/java/com/ap/collegespacev2/Models/DBNPediaPosts.kt new file mode 100644 index 0000000..230d7cb --- /dev/null +++ b/app/src/main/java/com/ap/collegespacev2/Models/DBNPediaPosts.kt @@ -0,0 +1,6 @@ +package com.ap.collegespacev2.Models + +/** + * Created by anirudh on 29/07/17. + */ +data class DBNPediaPosts(var id : Int , var title : String , var excerpt : String , var Author : String) \ No newline at end of file diff --git a/app/src/main/java/com/ap/collegespacev2/Models/NpediaPosts.kt b/app/src/main/java/com/ap/collegespacev2/Models/NpediaPosts.kt new file mode 100644 index 0000000..e648c9d --- /dev/null +++ b/app/src/main/java/com/ap/collegespacev2/Models/NpediaPosts.kt @@ -0,0 +1,13 @@ +package com.ap.collegespacev2.Models + +import android.support.annotation.Nullable + +/** + * Created by anirudh on 26/07/17. + */ +data class NpediaPosts (var ID : Int, var title : String, var content : String, + var link : String, var author : Author, + var excerpt : String, var featured_image : FeaturedImage) { + data class Author(var username : String , var avatar : String) + data class FeaturedImage( var guid : String) +} \ No newline at end of file diff --git a/app/src/main/java/com/ap/collegespacev2/NSITpediaPostDetails.java b/app/src/main/java/com/ap/collegespacev2/NSITpediaPostDetails.java new file mode 100644 index 0000000..d16be53 --- /dev/null +++ b/app/src/main/java/com/ap/collegespacev2/NSITpediaPostDetails.java @@ -0,0 +1,99 @@ +package com.ap.collegespacev2; + +import android.content.Intent; +import android.graphics.drawable.Drawable; +import android.net.Uri; +import android.support.v7.app.ActionBarActivity; +import android.os.Bundle; +import android.text.Html; +import android.util.Log; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; +import android.webkit.WebView; +import android.widget.ImageView; +import android.widget.TextView; + +import com.ap.collegespacev2.Helper.PostViewer; +import com.bumptech.glide.Glide; + +import java.io.FileNotFoundException; +import java.io.InputStream; + +public class NSITpediaPostDetails extends ActionBarActivity { + + public static final String TAG = "NSITpediaPostDetails" ; + TextView tvTitle ; + WebView webView ; + ImageView ivFeaturedImage ; + String link , title ; + Integer id ; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_nsitpedia_post_details); + + tvTitle = (TextView) findViewById(R.id.tvTitleNPediaDetails); + webView = (WebView) findViewById(R.id.webViewNsitPedia) ; + + ivFeaturedImage = (ImageView)findViewById(R.id.ivFeaturedImageNPediaDetails) ; + getSupportActionBar().setTitle("NSITpedia"); + + title = getIntent().getStringExtra("title") ; + String featured_image = getIntent().getStringExtra("featured_image") ; + String content = getIntent().getStringExtra("content") ; + String author = getIntent().getStringExtra("author") ; + link = getIntent().getStringExtra("link") ; + id = getIntent().getIntExtra("id" , 0) ; + + tvTitle.setText(title); + webView.setWebViewClient(new PostViewer()); + webView.setBackgroundColor(0xffeeeeee);//Android's default background color + webView.loadData(content, "text/html", "utf-8"); + + Glide.with(this).load(featured_image).into(ivFeaturedImage) ; + + + } + + @Override + public boolean onCreateOptionsMenu(Menu menu) { + + MenuInflater mi = getMenuInflater() ; + mi.inflate(R.menu.details , menu); + MenuItem fav = menu.findItem(R.id.menu_fav); + fav.setVisible(false); + + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + + switch(item.getItemId()){ + + case R.id.menu_share : + Intent sendIntent = new Intent(); + sendIntent.setAction(Intent.ACTION_SEND); + sendIntent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(title) + "\n" + link); + sendIntent.setType("text/plain"); + startActivity(Intent.createChooser(sendIntent, getString(R.string.action_share))); + break ; + case R.id.menu_web : startActivity(new Intent(Intent.ACTION_VIEW , Uri.parse(link))); + break ; + case R.id.menu_fav : + break; + case R.id.menu_not_fav : + break ; + default: + Log.d(TAG, "onOptionsItemSelected: Wrong option " ); + + } + + return super.onOptionsItemSelected(item); + } + + + +} diff --git a/app/src/main/java/com/ap/collegespacev2/NsitPediaActivity.java b/app/src/main/java/com/ap/collegespacev2/NsitPediaActivity.java new file mode 100644 index 0000000..faffa86 --- /dev/null +++ b/app/src/main/java/com/ap/collegespacev2/NsitPediaActivity.java @@ -0,0 +1,107 @@ +package com.ap.collegespacev2; + +import android.app.ProgressDialog; +import android.content.Intent; +import android.database.sqlite.SQLiteDatabase; +import android.os.Bundle; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; +import android.util.Log; +import android.view.View; +import android.widget.Toast; + +import com.ap.collegespacev2.Adapter.NsitPediaAdapter; +import com.ap.collegespacev2.Helper.DBHelper; +import com.ap.collegespacev2.Helper.NSITpediaTable; +import com.ap.collegespacev2.Helper.NsitPediaApi; +import com.ap.collegespacev2.Models.NpediaPosts; + +import java.util.ArrayList; + +import retrofit2.Call; +import retrofit2.Callback; +import retrofit2.Response; +import retrofit2.Retrofit; +import retrofit2.converter.gson.GsonConverterFactory; + +public class NsitPediaActivity extends BaseActivity { + + public static final String TAG = "NsitPediaActivity : "; + RecyclerView rvPosts; + NsitPediaAdapter adapter; + ArrayList listPostsNPedias; + DBHelper dbHelper; + SQLiteDatabase db; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_nsit_pedia, 2); + getSupportActionBar().setTitle("NSITpedia"); + rvPosts = (RecyclerView) findViewById(R.id.rvPostsNsitPedia); + rvPosts.setLayoutManager(new LinearLayoutManager(this)); + dbHelper = new DBHelper(this); + db = dbHelper.getWritableDatabase(); + + listPostsNPedias = new ArrayList<>(); + adapter = new NsitPediaAdapter(listPostsNPedias, this, new NsitPediaAdapter.OnItemCLickedListener() { + @Override + public void onItemCLicked(View view, NpediaPosts thisPost) { + Log.d(TAG, "onItemCLicked: "); + Intent i = new Intent(NsitPediaActivity.this, NSITpediaPostDetails.class); + i.putExtra("title", thisPost.getTitle()); + i.putExtra("content", thisPost.getContent()); + i.putExtra("featured_image", thisPost.getFeatured_image().getGuid()); + i.putExtra("author", thisPost.getAuthor().getUsername()); + i.putExtra("link", thisPost.getLink()); + i.putExtra("id", thisPost.getID()); + startActivity(i); + } + }); + + + listPostsNPedias = NSITpediaTable.getNPediaPosts(db) ; + adapter.updatePosts(listPostsNPedias); + rvPosts.setAdapter(adapter); + + Log.d(TAG, "onCreate: deleted DataBase"); + Log.d(TAG, "onCreate: " + NSITpediaTable.getNPediaPosts(db).size()); + Retrofit retrofit = new Retrofit.Builder() + .baseUrl("http://nsitpedia.collegespace.in/wp-json/") + .addConverterFactory(GsonConverterFactory.create()) + .build(); + NsitPediaApi api = retrofit.create(NsitPediaApi.class); + + api.getPosts().enqueue(new Callback>() { + @Override + public void onResponse(Call> call, final Response> response) { + + adapter.updatePosts(response.body()); + new Thread(new Runnable() { + @Override + public void run() { + for (NpediaPosts post : response.body()) { + NSITpediaTable.addData( + db, + post.getID(), + post.getTitle(), + post.getExcerpt(), + post.getAuthor().getUsername() , + post.getContent() + ); + } + } + }).run(); + + + + } + + @Override + public void onFailure(Call> call, Throwable t) { + Log.d(TAG, "onFailure: "); + Toast.makeText(NsitPediaActivity.this, "Connection error", Toast.LENGTH_SHORT).show(); + } + }); + } +} diff --git a/app/src/main/res/drawable-v21/ic_person.xml b/app/src/main/res/drawable-v21/ic_person.xml new file mode 100644 index 0000000..b6308a2 --- /dev/null +++ b/app/src/main/res/drawable-v21/ic_person.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_person.xml b/app/src/main/res/drawable/ic_person.xml new file mode 100644 index 0000000..b6308a2 --- /dev/null +++ b/app/src/main/res/drawable/ic_person.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/layout/activity_nsit_pedia.xml b/app/src/main/res/layout/activity_nsit_pedia.xml new file mode 100644 index 0000000..43e8c6c --- /dev/null +++ b/app/src/main/res/layout/activity_nsit_pedia.xml @@ -0,0 +1,19 @@ + + + + + + + + diff --git a/app/src/main/res/layout/activity_nsitpedia_post_details.xml b/app/src/main/res/layout/activity_nsitpedia_post_details.xml new file mode 100644 index 0000000..8c5272e --- /dev/null +++ b/app/src/main/res/layout/activity_nsitpedia_post_details.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + diff --git a/app/src/main/res/layout/list_nsitpedia_posts.xml b/app/src/main/res/layout/list_nsitpedia_posts.xml new file mode 100644 index 0000000..7777f01 --- /dev/null +++ b/app/src/main/res/layout/list_nsitpedia_posts.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build.gradle b/build.gradle index 65333c6..4f66ef7 100644 --- a/build.gradle +++ b/build.gradle @@ -1,12 +1,14 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { + ext.kotlin_version = '1.1.3-2' repositories { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:2.0.0-alpha9' + classpath 'com.android.tools.build:gradle:2.3.3' classpath 'com.google.gms:google-services:1.3.0-beta1' + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 122a0dc..31298fe 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Mon Dec 28 10:00:20 PST 2015 +#Mon Jul 24 00:09:04 IST 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip