Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private Product product;
- private ProductRetrievingTask mainTask;
- private ProductRetrieverImpl retriever;
- String ben;
- private ArrayList<Product> products;
- private ProductAdapter productAdapter;
- private static MainActivityListFragment instance = null;
- //Activity when the main activity calls it
- @Override
- public void onActivityCreated(Bundle saveInstantceState) {
- super.onActivityCreated(saveInstantceState);
- instance = this;
- new JSOUP().execute();
- products = new ArrayList<Product>();
- products.add(new Product("New ipad mini", 15.99, "#offerPrice_262795", "http://www.homebase.co.uk/en/homebaseuk/black--decker-ni-cad-cordless-drill-driver---18v-623805", "http://www.bhphotovideo.com/images/images2000x2000/Apple_MC770LL_A_32GB_iPad_2_with_758439.jpg"));
- products.add(new Product("New ipad mini2", 51.99, "#CSS", "http://www.bbc.co.uk", "http://www.bhphotovideo.com/images/images2000x2000/Apple_MC770LL_A_32GB_iPad_2_with_758439.jpg"));
- products.add(new Product("New ipad mini3", 152.99, "#CSS", "http://www.bbc.co.uk", "http://www.bhphotovideo.com/images/images2000x2000/Apple_MC770LL_A_32GB_iPad_2_with_758439.jpg"));
- products.add(new Product("New ipad mini4", 153.99, "#CSS", "http://www.bbc.co.uk", "http://www.bhphotovideo.com/images/images2000x2000/Apple_MC770LL_A_32GB_iPad_2_with_758439.jpg"));
- products.add(new Product("New ipad mini5", 154.99, "#CSS", "http://www.bbc.co.uk", "http://www.bhphotovideo.com/images/images2000x2000/Apple_MC770LL_A_32GB_iPad_2_with_758439.jpg"));
- products.add(new Product("New ipad mini", 15.99, "#CSS", "http://www.bbc.co.uk", "http://www.bhphotovideo.com/images/images2000x2000/Apple_MC770LL_A_32GB_iPad_2_with_758439.jpg"));
- products.add(new Product("New ipad mini2", 151.99, "#CSS", "http://www.funktiongolf.co.uk", "http://lightswitchtimer.co.uk/wp-content/uploads/2013/12/lights-for-pets.jpg"));
- products.add(new Product("New ipad mini3", 152.99, "#CSS", "http://www.funktiongolf.co.uk", "http://lightswitchtimer.co.uk/wp-content/uploads/2013/12/lights-for-pets.jpg"));
- products.add(new Product("New ipad mini4", 153.99, "#CSS", "http://www.funktiongolf.co.uk", "http://lightswitchtimer.co.uk/wp-content/uploads/2013/12/lights-for-pets.jpg"));
- products.add(new Product("New ipad mini5", 154.99, "#CSS", "http://www.funktiongolf.co.uk", "http://lightswitchtimer.co.uk/wp-content/uploads/2013/12/lights-for-pets.jpg"));
- productAdapter = new ProductAdapter(getActivity(), products);
- setListAdapter(productAdapter);
- registerForContextMenu(getListView());
- }
- public static MainActivityListFragment getInstance() {
- return instance;
- }
- @Override
- public void onListItemClick(ListView l, View v, int position, long id) {
- //Called when an item is clicked
- super.onListItemClick(l, v, position, id);
- launchProductDetail(position);
- }
- @Override
- public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
- super.onCreateContextMenu(menu, v, menuInfo);
- MenuInflater menuInflater = getActivity().getMenuInflater();
- menuInflater.inflate(R.menu.long_press_menu, menu);
- }
- public void priceUpdate(Product product, double newPrice) {
- product.setOldprice(product.getPrice());
- product.setPrice(newPrice);
- }
- @Override
- public boolean onContextItemSelected(MenuItem item) {
- AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
- final int rowPosition = info.position;
- //Returns the id of which menu item we select
- switch (item.getItemId()) {
- case R.id.delete:
- AlertDialog.Builder adb = new AlertDialog.Builder(getActivity());
- adb.setTitle("Delete?");
- adb.setMessage("Are you sure you want to delete this item?");
- adb.setNegativeButton("Cancel", null);
- adb.setPositiveButton("Ok", new AlertDialog.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- productAdapter.remove(productAdapter.getItem(rowPosition));
- productAdapter.notifyDataSetChanged();
- }
- });
- adb.show();
- Log.d("Menu Click", "We pressed delete");
- // return true;
- break;
- case R.id.update:
- break;
- case R.id.website:
- product = productAdapter.getItem(rowPosition);
- if (product != null)
- startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(product.getLink())));
- break;
- // return true;
- }
- return super.onContextItemSelected(item);
- }
- private void launchProductDetail(int position) {
- Product product = (Product) getListAdapter().getItem(position);
- Intent intent = new Intent(getActivity(), ProductDetailActivity.class);
- intent.putExtra("Product", product);
- startActivity(intent);
- }
- public void update() {
- ProductRetrieverImpl retriever = mainTask.getRetriever();
- String price = retriever.getBySelectorPrice2();
- double newPrice = Double.parseDouble(price.substring(1));
- if (newPrice != product.getPrice()) {
- if (newPrice < product.getPrice()) {
- product.setPriceIncrease(false);
- priceUpdate(product, newPrice);
- } else {
- product.setPriceIncrease(true);
- priceUpdate(product, newPrice);
- }
- }
- }
- public class JSOUP extends AsyncTask<Void, Void, Void> {
- ProgressDialog dialog;
- @Override
- protected void onPreExecute() {
- super.onPreExecute();
- dialog = new ProgressDialog(getContext());
- dialog.setMessage("loading.....");
- dialog.show();
- }
- @Override
- protected Void doInBackground(Void... params) {
- try {
- Document document = Jsoup.connect("http://www.homebase.co.uk/en/homebaseuk/black--decker-ni-cad-cordless-drill-driver---18v-623805").get();
- Element element = document.select("#offerPrice_262795").first();
- ben = element.text();
- } catch (Exception e) {
- }
- return null;
- }
- @Override
- protected void onPostExecute(Void aVoid) {
- super.onPostExecute(aVoid);
- dialog.dismiss();
- Log.d("anything selected?", ben);
- System.out.println(ben);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement