Search in sources :

Example 16 with User

use of com.nightonke.saver.model.User in project CoCoin by Nightonke.

the class AccountBookListViewActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_account_book_list_view);
    mContext = this;
    userName = (TextView) findViewById(R.id.user_name);
    userEmail = (TextView) findViewById(R.id.user_email);
    userName.setTypeface(CoCoinUtil.typefaceLatoRegular);
    userEmail.setTypeface(CoCoinUtil.typefaceLatoLight);
    User user = BmobUser.getCurrentUser(CoCoinApplication.getAppContext(), User.class);
    if (user != null) {
        userName.setText(user.getUsername());
        userEmail.setText(user.getEmail());
    }
    int size = RecordManager.getInstance(CoCoinApplication.getAppContext()).RECORDS.size();
    if (RecordManager.getInstance(CoCoinApplication.getAppContext()).SELECTED_RECORDS == null) {
        RecordManager.getInstance(CoCoinApplication.getAppContext()).SELECTED_RECORDS = new LinkedList<>();
    }
    RecordManager.getInstance(CoCoinApplication.getAppContext()).SELECTED_RECORDS.clear();
    for (int i = 0; i < size; i++) {
        CoCoinRecord record = new CoCoinRecord();
        record.set(RecordManager.RECORDS.get(i));
        RecordManager.getInstance(CoCoinApplication.getAppContext()).SELECTED_RECORDS.add(record);
    }
    RecordManager.getInstance(CoCoinApplication.getAppContext()).SELECTED_SUM = Double.valueOf(RecordManager.getInstance(CoCoinApplication.getAppContext()).SUM);
    originalSum = RecordManager.getInstance(CoCoinApplication.getAppContext()).SELECTED_SUM;
    toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    setTitle("");
    mDrawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    int currentapiVersion = android.os.Build.VERSION.SDK_INT;
    if (currentapiVersion >= Build.VERSION_CODES.LOLLIPOP) {
        // Do something for lollipop and above versions
        Window window = this.getWindow();
        window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
        window.setStatusBarColor(ContextCompat.getColor(mContext, R.color.statusBarColor));
    } else {
        // do something for phones running an SDK before lollipop
        View statusBarView = (View) findViewById(R.id.status_bar_view);
        statusBarView.getLayoutParams().height = CoCoinUtil.getStatusBarHeight();
    }
    if (toolbar != null) {
        setSupportActionBar(toolbar);
        final ActionBar actionBar = getSupportActionBar();
        if (actionBar != null) {
            actionBar.setDisplayHomeAsUpEnabled(true);
            actionBar.setDisplayShowHomeEnabled(true);
            actionBar.setDisplayShowTitleEnabled(true);
            actionBar.setDisplayUseLogoEnabled(false);
            actionBar.setHomeButtonEnabled(true);
        }
    }
    mDrawerToggle = new ActionBarDrawerToggle(this, mDrawer, 0, 0);
    mDrawer.setDrawerListener(mDrawerToggle);
    searchView = (MaterialSearchView) findViewById(R.id.search_view);
    searchView.setVoiceSearch(false);
    searchView.setHint(mContext.getResources().getString(R.string.input_remark_to_search));
    searchView.setOnQueryTextListener(new MaterialSearchView.OnQueryTextListener() {

        @Override
        public boolean onQueryTextSubmit(String query) {
            progressDialog = new MaterialDialog.Builder(mContext).title(R.string.selecting_title).content(R.string.selecting_content).cancelable(false).progress(true, 0).show();
            new SelectRecordsByRemark(query).execute();
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            return false;
        }
    });
    searchView.setOnSearchViewListener(new MaterialSearchView.SearchViewListener() {

        @Override
        public void onSearchViewShown() {
            //Do some magic
            Log.d("Saver", "onSearchViewShown");
        }

        @Override
        public void onSearchViewClosed() {
            //Do some magic
            Log.d("Saver", "onSearchViewClosed");
        }
    });
    emptyTip = (TextView) findViewById(R.id.empty_tip);
    emptyTip.setTypeface(CoCoinUtil.GetTypeface());
    recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
    layoutManager = new LinearLayoutManager(mContext, LinearLayoutManager.VERTICAL, false);
    recyclerViewTouchActionGuardManager = new RecyclerViewTouchActionGuardManager();
    recyclerViewTouchActionGuardManager.setInterceptVerticalScrollingWhileAnimationRunning(true);
    recyclerViewTouchActionGuardManager.setEnabled(true);
    recyclerViewSwipeManager = new RecyclerViewSwipeManager();
    mAdapter = new MySwipeableItemAdapter(mContext, RecordManager.SELECTED_RECORDS, this, this);
    mAdapter.setEventListener(new MySwipeableItemAdapter.EventListener() {

        @Override
        public void onItemRemoved(int position) {
            activityOnItemRemoved(position);
        }

        @Override
        public void onItemPinned(int position) {
            activityOnItemPinned(position);
        }

        @Override
        public void onItemViewClicked(View v, boolean pinned) {
            int position = recyclerView.getChildAdapterPosition(v);
            if (position != RecyclerView.NO_POSITION) {
                activityOnItemClicked(position);
            }
        }
    });
    adapter = mAdapter;
    wrappedAdapter = recyclerViewSwipeManager.createWrappedAdapter(mAdapter);
    final GeneralItemAnimator animator = new SwipeDismissItemAnimator();
    animator.setSupportsChangeAnimations(false);
    recyclerView.setLayoutManager(layoutManager);
    recyclerView.setAdapter(wrappedAdapter);
    recyclerView.setItemAnimator(animator);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    // Lollipop or later has native drop shadow feature. ItemShadowDecorator is not required.
    } else {
        recyclerView.addItemDecoration(new ItemShadowDecorator((NinePatchDrawable) ContextCompat.getDrawable(mContext, R.drawable.material_shadow_z1)));
    }
    recyclerView.addItemDecoration(new SimpleListDividerDecorator(ContextCompat.getDrawable(mContext, R.drawable.list_divider_h), true));
    // NOTE:
    // The initialization order is very important! This order determines the priority of touch event handling.
    //
    // priority: TouchActionGuard > Swipe > DragAndDrop
    recyclerViewTouchActionGuardManager.attachRecyclerView(recyclerView);
    recyclerViewSwipeManager.attachRecyclerView(recyclerView);
    verticalRecyclerViewFastScroller = (VerticalRecyclerViewFastScroller) findViewById(R.id.fast_scroller);
    // Connect the recycler to the scroller (to let the scroller scroll the list)
    verticalRecyclerViewFastScroller.setRecyclerView(recyclerView);
    // Connect the scroller to the recycler (to let the recycler scroll the scroller's handle)
    recyclerView.setOnScrollListener(verticalRecyclerViewFastScroller.getOnScrollListener());
    CoCoinUtil.backupCoCoinRecord = null;
    if (RecordManager.SELECTED_RECORDS.size() == 0) {
        emptyTip.setVisibility(View.VISIBLE);
        verticalRecyclerViewFastScroller.setVisibility(View.INVISIBLE);
    } else {
        emptyTip.setVisibility(View.GONE);
        verticalRecyclerViewFastScroller.setVisibility(View.VISIBLE);
    }
    infoLayout = (FrameLayout) mDrawer.findViewById(R.id.info_layout);
    LinearLayout.LayoutParams infoLayoutParams = new LinearLayout.LayoutParams(infoLayout.getLayoutParams());
    infoLayoutParams.setMargins(0, CoCoinUtil.getStatusBarHeight() - CoCoinUtil.dpToPx(30), 0, 0);
    infoLayout.setLayoutParams(infoLayoutParams);
    profileImage = (CircleImageView) mDrawer.findViewById(R.id.profile_image);
    profileImage.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (SettingManager.getInstance().getLoggenOn()) {
                CoCoinUtil.showToast(mContext, R.string.change_logo_tip);
            } else {
                CoCoinUtil.showToast(mContext, R.string.login_tip);
            }
        }
    });
    mDemoSlider = (SliderLayout) findViewById(R.id.slider);
    HashMap<String, Integer> urls = CoCoinUtil.GetDrawerTopUrl();
    for (String name : urls.keySet()) {
        CustomSliderView customSliderView = new CustomSliderView(this);
        // initialize a SliderLayout
        customSliderView.image(urls.get(name)).setScaleType(BaseSliderView.ScaleType.Fit);
        mDemoSlider.addSlider(customSliderView);
    }
    mDemoSlider.setPresetTransformer(SliderLayout.Transformer.ZoomOut);
    mDemoSlider.setCustomAnimation(new DescriptionAnimation());
    mDemoSlider.setDuration(4000);
    mDemoSlider.setCustomIndicator((PagerIndicator) findViewById(R.id.custom_indicator));
    titleExpense = (TextView) findViewById(R.id.title_expense);
    titleExpense.setTypeface(CoCoinUtil.typefaceLatoLight);
    titleExpense.setText(CoCoinUtil.GetInMoney((int) (double) RecordManager.getInstance(mContext).SELECTED_SUM));
    titleSum = (TextView) findViewById(R.id.title_sum);
    titleSum.setTypeface(CoCoinUtil.typefaceLatoLight);
    titleSum.setText(RecordManager.getInstance(mContext).SELECTED_RECORDS.size() + "'s");
    //        titleSlider = (SliderLayout)findViewById(R.id.title_slider);
    //        titleSlider.getLayoutParams().height = 48;
    //        titleSlider.getLayoutParams().width = 400 - CoCoinUtil.dpToPx(60 * 2);
    //
    //        HashMap<String, Integer> urls2 = CoCoinUtil.getTransparentUrls();
    //
    //        CustomTitleSliderView customTitleSliderView = new CustomTitleSliderView(0 + "'s", CoCoinFragmentManager.NUMBER_SLIDER);
    //        customTitleSliderView
    //                .image(urls2.get("0"))
    //                .setScaleType(BaseSliderView.ScaleType.Fit);
    //        titleSlider.addSlider(customTitleSliderView);
    //
    //        customTitleSliderView = new CustomTitleSliderView(CoCoinUtil.GetInMoney(0), CoCoinFragmentManager.EXPENSE_SLIDER);
    //        customTitleSliderView
    //                .image(urls2.get("1"))
    //                .setScaleType(BaseSliderView.ScaleType.Fit);
    //        titleSlider.addSlider(customTitleSliderView);
    //
    //        titleSlider.setPresetTransformer(SliderLayout.Transformer.ZoomOut);
    //        titleSlider.setCustomAnimation(new DescriptionAnimation());
    //        titleSlider.setDuration(3000);
    //        titleSlider.setCustomIndicator((PagerIndicator) findViewById(R.id.custom_indicator));
    ((TextView) findViewById(R.id.tag_title)).setTypeface(CoCoinUtil.GetTypeface());
    ((TextView) findViewById(R.id.tag_title_expense)).setTypeface(CoCoinUtil.GetTypeface());
    ((TextView) findViewById(R.id.tag_title_time)).setTypeface(CoCoinUtil.GetTypeface());
    ((TextView) findViewById(R.id.tag_title_tag)).setTypeface(CoCoinUtil.GetTypeface());
    setMoney = (TextView) findViewById(R.id.select_expense);
    setMoney.setTypeface(CoCoinUtil.GetTypeface());
    setMoney.setOnClickListener(this);
    noMoney = (TextView) findViewById(R.id.no_expense);
    noMoney.setTypeface(CoCoinUtil.GetTypeface());
    noMoney.setOnClickListener(this);
    setTime = (TextView) findViewById(R.id.select_time);
    setTime.setTypeface(CoCoinUtil.GetTypeface());
    setTime.setOnClickListener(this);
    noTime = (TextView) findViewById(R.id.no_time);
    noTime.setTypeface(CoCoinUtil.GetTypeface());
    noTime.setOnClickListener(this);
    setTag = (TextView) findViewById(R.id.select_tag);
    setTag.setTypeface(CoCoinUtil.GetTypeface());
    setTag.setOnClickListener(this);
    noTag = (TextView) findViewById(R.id.no_tag);
    noTag.setTypeface(CoCoinUtil.GetTypeface());
    noTag.setOnClickListener(this);
    select = (TextView) findViewById(R.id.select);
    select.setTypeface(CoCoinUtil.GetTypeface());
    select.setOnClickListener(this);
    leftExpense = (TextView) findViewById(R.id.left_expense);
    leftExpense.setTypeface(CoCoinUtil.GetTypeface());
    rightExpense = (TextView) findViewById(R.id.right_expense);
    rightExpense.setTypeface(CoCoinUtil.GetTypeface());
    leftTime = (TextView) findViewById(R.id.left_time);
    leftTime.setTypeface(CoCoinUtil.GetTypeface());
    rightTime = (TextView) findViewById(R.id.right_time);
    rightTime.setTypeface(CoCoinUtil.GetTypeface());
    tagImage = (ImageView) findViewById(R.id.tag_image);
    tagName = (TextView) findViewById(R.id.tag_name);
    tagName.setTypeface(CoCoinUtil.GetTypeface());
    setConditions();
    loadLogo();
}
Also used : BmobUser(cn.bmob.v3.BmobUser) User(com.nightonke.saver.model.User) ActionBarDrawerToggle(android.support.v7.app.ActionBarDrawerToggle) CustomSliderView(com.nightonke.saver.ui.CustomSliderView) LinearLayoutManager(android.support.v7.widget.LinearLayoutManager) SwipeDismissItemAnimator(com.h6ah4i.android.widget.advrecyclerview.animator.SwipeDismissItemAnimator) RecyclerViewTouchActionGuardManager(com.h6ah4i.android.widget.advrecyclerview.touchguard.RecyclerViewTouchActionGuardManager) ItemShadowDecorator(com.h6ah4i.android.widget.advrecyclerview.decoration.ItemShadowDecorator) TextView(android.widget.TextView) SimpleListDividerDecorator(com.h6ah4i.android.widget.advrecyclerview.decoration.SimpleListDividerDecorator) ActionBar(android.support.v7.app.ActionBar) NinePatchDrawable(android.graphics.drawable.NinePatchDrawable) Window(android.view.Window) RecyclerViewSwipeManager(com.h6ah4i.android.widget.advrecyclerview.swipeable.RecyclerViewSwipeManager) MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) MaterialSearchView(com.miguelcatalan.materialsearchview.MaterialSearchView) ImageView(android.widget.ImageView) CircleImageView(de.hdodenhof.circleimageview.CircleImageView) View(android.view.View) MyGridView(com.nightonke.saver.ui.MyGridView) AdapterView(android.widget.AdapterView) TextView(android.widget.TextView) BaseSliderView(com.daimajia.slider.library.SliderTypes.BaseSliderView) CustomSliderView(com.nightonke.saver.ui.CustomSliderView) RecyclerView(android.support.v7.widget.RecyclerView) CoCoinRecord(com.nightonke.saver.model.CoCoinRecord) DescriptionAnimation(com.daimajia.slider.library.Animations.DescriptionAnimation) MaterialSearchView(com.miguelcatalan.materialsearchview.MaterialSearchView) MySwipeableItemAdapter(com.nightonke.saver.adapter.MySwipeableItemAdapter) GeneralItemAnimator(com.h6ah4i.android.widget.advrecyclerview.animator.GeneralItemAnimator) LinearLayout(android.widget.LinearLayout)

Example 17 with User

use of com.nightonke.saver.model.User in project CoCoin by Nightonke.

the class AccountBookMonthViewActivity method loadLogo.

private void loadLogo() {
    User user = BmobUser.getCurrentUser(CoCoinApplication.getAppContext(), User.class);
    if (user != null) {
        try {
            File logoFile = new File(CoCoinApplication.getAppContext().getFilesDir() + CoCoinUtil.LOGO_NAME);
            if (!logoFile.exists()) {
                // the local logo file is missed
                // try to get from the server
                BmobQuery<Logo> bmobQuery = new BmobQuery();
                bmobQuery.addWhereEqualTo("objectId", user.getLogoObjectId());
                bmobQuery.findObjects(CoCoinApplication.getAppContext(), new FindListener<Logo>() {

                    @Override
                    public void onSuccess(List<Logo> object) {
                        // there has been an old logo in the server/////////////////////////////////////////////////////////
                        String url = object.get(0).getFile().getFileUrl(CoCoinApplication.getAppContext());
                        if (BuildConfig.DEBUG)
                            Log.d("CoCoin", "Logo in server: " + url);
                        Ion.with(CoCoinApplication.getAppContext()).load(url).write(new File(CoCoinApplication.getAppContext().getFilesDir() + CoCoinUtil.LOGO_NAME)).setCallback(new FutureCallback<File>() {

                            @Override
                            public void onCompleted(Exception e, File file) {
                                profileImage.setImageBitmap(BitmapFactory.decodeFile(CoCoinApplication.getAppContext().getFilesDir() + CoCoinUtil.LOGO_NAME));
                            }
                        });
                    }

                    @Override
                    public void onError(int code, String msg) {
                        // the picture is lost
                        if (BuildConfig.DEBUG)
                            Log.d("CoCoin", "Can't find the old logo in server.");
                    }
                });
            } else {
                // the user logo is in the storage
                Bitmap b = BitmapFactory.decodeStream(new FileInputStream(logoFile));
                profileImage.setImageBitmap(b);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    } else {
        // use the default logo
        profileImage.setImageResource(R.drawable.default_user_logo);
    }
}
Also used : User(com.nightonke.saver.model.User) BmobUser(cn.bmob.v3.BmobUser) FileNotFoundException(java.io.FileNotFoundException) FileNotFoundException(java.io.FileNotFoundException) FileInputStream(java.io.FileInputStream) Logo(com.nightonke.saver.model.Logo) Bitmap(android.graphics.Bitmap) BmobQuery(cn.bmob.v3.BmobQuery) File(java.io.File) FutureCallback(com.koushikdutta.async.future.FutureCallback)

Example 18 with User

use of com.nightonke.saver.model.User in project CoCoin by Nightonke.

the class AccountBookTagViewActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mContext = this;
    setContentView(R.layout.activity_account_book_tag_view);
    mViewPager = (MaterialViewPager) findViewById(R.id.materialViewPager);
    View view = mViewPager.getRootView();
    TextView title = (TextView) view.findViewById(R.id.logo_white);
    title.setTypeface(CoCoinUtil.typefaceLatoLight);
    title.setText(SettingManager.getInstance().getAccountBookName());
    mViewPager.getPagerTitleStrip().setTypeface(CoCoinUtil.typefaceLatoLight, Typeface.NORMAL);
    setTitle("");
    toolbar = mViewPager.getToolbar();
    mDrawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    userName = (TextView) findViewById(R.id.user_name);
    userEmail = (TextView) findViewById(R.id.user_email);
    userName.setTypeface(CoCoinUtil.typefaceLatoRegular);
    userEmail.setTypeface(CoCoinUtil.typefaceLatoLight);
    User user = BmobUser.getCurrentUser(CoCoinApplication.getAppContext(), User.class);
    if (user != null) {
        userName.setText(user.getUsername());
        userEmail.setText(user.getEmail());
    }
    if (toolbar != null) {
        setSupportActionBar(toolbar);
        final ActionBar actionBar = getSupportActionBar();
        if (actionBar != null) {
            actionBar.setDisplayHomeAsUpEnabled(true);
            actionBar.setDisplayShowHomeEnabled(true);
            actionBar.setDisplayShowTitleEnabled(true);
            actionBar.setDisplayUseLogoEnabled(false);
            actionBar.setHomeButtonEnabled(true);
        }
    }
    mDrawerToggle = new ActionBarDrawerToggle(this, mDrawer, 0, 0);
    mDrawer.setDrawerListener(mDrawerToggle);
    View logo = findViewById(R.id.logo_white);
    if (logo != null) {
        logo.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                mViewPager.notifyHeaderChanged();
            }
        });
    }
    tagModeAdapter = new TagViewFragmentAdapter(getSupportFragmentManager());
    mViewPager.getViewPager().setOffscreenPageLimit(tagModeAdapter.getCount());
    mViewPager.getViewPager().setAdapter(tagModeAdapter);
    mViewPager.getPagerTitleStrip().setViewPager(mViewPager.getViewPager());
    mViewPager.clearAnimation();
    if (SettingManager.getInstance().getShowPicture()) {
        mViewPager.setMaterialViewPagerListener(new MaterialViewPager.Listener() {

            @Override
            public HeaderDesign getHeaderDesign(int page) {
                return HeaderDesign.fromColorAndUrl(CoCoinUtil.GetTagColor(RecordManager.TAGS.get(page).getId()), CoCoinUtil.GetTagUrl(RecordManager.TAGS.get(page).getId()));
            }
        });
    } else {
        mViewPager.setMaterialViewPagerListener(new MaterialViewPager.Listener() {

            @Override
            public HeaderDesign getHeaderDesign(int page) {
                return HeaderDesign.fromColorAndDrawable(CoCoinUtil.GetTagColor(RecordManager.TAGS.get(page).getId()), CoCoinUtil.GetTagDrawable(-3));
            }
        });
    }
    myGridView = (MyGridView) mDrawer.findViewById(R.id.grid_view);
    drawerTagChooseAdapter = new DrawerTagChooseGridViewAdapter(mContext);
    myGridView.setAdapter(drawerTagChooseAdapter);
    myGridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, final int position, long id) {
            YoYo.with(Techniques.Bounce).delay(0).duration(700).playOn(view);
            mViewPager.getViewPager().setCurrentItem(position);
            final Handler handler = new Handler();
            handler.postDelayed(new Runnable() {

                @Override
                public void run() {
                    mDrawer.closeDrawers();
                }
            }, 700);
        }
    });
    profileImage = (CircleImageView) mDrawer.findViewById(R.id.profile_image);
    profileImage.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (SettingManager.getInstance().getLoggenOn()) {
                CoCoinUtil.showToast(mContext, R.string.change_logo_tip);
            } else {
                CoCoinUtil.showToast(mContext, R.string.login_tip);
            }
        }
    });
    mDemoSlider = (SliderLayout) findViewById(R.id.slider);
    HashMap<String, Integer> urls = CoCoinUtil.GetDrawerTopUrl();
    for (String name : urls.keySet()) {
        CustomSliderView customSliderView = new CustomSliderView(this);
        // initialize a SliderLayout
        customSliderView.image(urls.get(name)).setScaleType(BaseSliderView.ScaleType.Fit);
        mDemoSlider.addSlider(customSliderView);
    }
    mDemoSlider.setPresetTransformer(SliderLayout.Transformer.ZoomOut);
    mDemoSlider.setCustomAnimation(new DescriptionAnimation());
    mDemoSlider.setDuration(4000);
    mDemoSlider.setCustomIndicator((PagerIndicator) findViewById(R.id.custom_indicator));
    loadLogo();
}
Also used : MaterialViewPager(com.github.florent37.materialviewpager.MaterialViewPager) BmobUser(cn.bmob.v3.BmobUser) User(com.nightonke.saver.model.User) HeaderDesign(com.github.florent37.materialviewpager.header.HeaderDesign) ActionBarDrawerToggle(android.support.v7.app.ActionBarDrawerToggle) TagViewFragmentAdapter(com.nightonke.saver.adapter.TagViewFragmentAdapter) Handler(android.os.Handler) CustomSliderView(com.nightonke.saver.ui.CustomSliderView) CircleImageView(de.hdodenhof.circleimageview.CircleImageView) View(android.view.View) MyGridView(com.nightonke.saver.ui.MyGridView) AdapterView(android.widget.AdapterView) TextView(android.widget.TextView) BaseSliderView(com.daimajia.slider.library.SliderTypes.BaseSliderView) CustomSliderView(com.nightonke.saver.ui.CustomSliderView) DescriptionAnimation(com.daimajia.slider.library.Animations.DescriptionAnimation) TextView(android.widget.TextView) AdapterView(android.widget.AdapterView) DrawerTagChooseGridViewAdapter(com.nightonke.saver.adapter.DrawerTagChooseGridViewAdapter) ActionBar(android.support.v7.app.ActionBar)

Example 19 with User

use of com.nightonke.saver.model.User in project CoCoin by Nightonke.

the class AccountBookTodayViewActivity method onResume.

@Override
public void onResume() {
    if (mDemoSlider != null)
        mDemoSlider.startAutoCycle();
    super.onResume();
    if (SettingManager.getInstance().getTodayViewPieShouldChange()) {
        todayModeAdapter.notifyDataSetChanged();
        SettingManager.getInstance().setTodayViewPieShouldChange(Boolean.FALSE);
    }
    if (SettingManager.getInstance().getTodayViewTitleShouldChange()) {
        title.setText(SettingManager.getInstance().getAccountBookName());
        SettingManager.getInstance().setTodayViewTitleShouldChange(false);
    }
    if (SettingManager.getInstance().getRecordIsUpdated()) {
        todayModeAdapter.notifyDataSetChanged();
        SettingManager.getInstance().setRecordIsUpdated(false);
    }
    if (SettingManager.getInstance().getTodayViewMonthExpenseShouldChange()) {
        if (SettingManager.getInstance().getIsMonthLimit()) {
            monthExpenseTip.setVisibility(View.VISIBLE);
            monthExpense.withNumber(RecordManager.getCurrentMonthExpense()).setDuration(500).start();
        } else {
            monthExpenseTip.setVisibility(View.INVISIBLE);
            monthExpense.setVisibility(View.INVISIBLE);
        }
    }
    if (SettingManager.getInstance().getTodayViewLogoShouldChange()) {
        loadLogo();
        SettingManager.getInstance().setTodayViewLogoShouldChange(false);
    }
    if (SettingManager.getInstance().getTodayViewInfoShouldChange()) {
        setIconEnable(syncIcon, SettingManager.getInstance().getLoggenOn());
        User user = BmobUser.getCurrentUser(CoCoinApplication.getAppContext(), User.class);
        if (user != null) {
            userName.setText(user.getUsername());
            userEmail.setText(user.getEmail());
            loadLogo();
        } else {
            userName.setText("");
            userEmail.setText("");
            loadLogo();
        }
        SettingManager.getInstance().setTodayViewInfoShouldChange(false);
    }
}
Also used : BmobUser(cn.bmob.v3.BmobUser) User(com.nightonke.saver.model.User)

Example 20 with User

use of com.nightonke.saver.model.User in project CoCoin by Nightonke.

the class SetPasswordActivity method buttonClickOperation.

private void buttonClickOperation(boolean longClick, int position) {
    switch(CURRENT_STATE) {
        case NEW_PASSWORD:
            if (CoCoinUtil.ClickButtonDelete(position)) {
                if (longClick) {
                    CoCoinFragmentManager.passwordChangeFragment[CURRENT_STATE].init();
                    newPassword = "";
                } else {
                    CoCoinFragmentManager.passwordChangeFragment[CURRENT_STATE].clear(newPassword.length() - 1);
                    if (newPassword.length() != 0)
                        newPassword = newPassword.substring(0, newPassword.length() - 1);
                }
            } else if (CoCoinUtil.ClickButtonCommit(position)) {
            } else {
                CoCoinFragmentManager.passwordChangeFragment[CURRENT_STATE].set(newPassword.length());
                newPassword += CoCoinUtil.BUTTONS[position];
                if (newPassword.length() == 4) {
                    // finish the new password input
                    CURRENT_STATE = PASSWORD_AGAIN;
                    viewPager.setCurrentItem(PASSWORD_AGAIN, true);
                }
            }
            break;
        case PASSWORD_AGAIN:
            if (CoCoinUtil.ClickButtonDelete(position)) {
                if (longClick) {
                    CoCoinFragmentManager.passwordChangeFragment[CURRENT_STATE].init();
                    againPassword = "";
                } else {
                    CoCoinFragmentManager.passwordChangeFragment[CURRENT_STATE].clear(againPassword.length() - 1);
                    if (againPassword.length() != 0)
                        againPassword = againPassword.substring(0, againPassword.length() - 1);
                }
            } else if (CoCoinUtil.ClickButtonCommit(position)) {
            } else {
                CoCoinFragmentManager.passwordChangeFragment[CURRENT_STATE].set(againPassword.length());
                againPassword += CoCoinUtil.BUTTONS[position];
                if (againPassword.length() == 4) {
                    // if the password again is equal to the new password
                    if (againPassword.equals(newPassword)) {
                        CURRENT_STATE = -1;
                        showToast(2);
                        SettingManager.getInstance().setPassword(newPassword);
                        SettingManager.getInstance().setFirstTime(false);
                        if (SettingManager.getInstance().getLoggenOn()) {
                            User currentUser = BmobUser.getCurrentUser(CoCoinApplication.getAppContext(), User.class);
                            currentUser.setAccountBookPassword(newPassword);
                            currentUser.update(CoCoinApplication.getAppContext(), currentUser.getObjectId(), new UpdateListener() {

                                @Override
                                public void onSuccess() {
                                    Log.d("Saver", "Set password successfully.");
                                }

                                @Override
                                public void onFailure(int code, String msg) {
                                    Log.d("Saver", "Set password failed.");
                                }
                            });
                        }
                        final Handler handler = new Handler();
                        handler.postDelayed(new Runnable() {

                            @Override
                            public void run() {
                                finish();
                            }
                        }, 1000);
                    } else {
                        CoCoinFragmentManager.passwordChangeFragment[CURRENT_STATE].clear(4);
                        ((PasswordChangeFragment) passwordAdapter.getItem(CURRENT_STATE - 1)).init();
                        CURRENT_STATE = NEW_PASSWORD;
                        viewPager.setCurrentItem(NEW_PASSWORD, true);
                        newPassword = "";
                        againPassword = "";
                        showToast(1);
                    }
                }
            }
            break;
        default:
            break;
    }
}
Also used : User(com.nightonke.saver.model.User) BmobUser(cn.bmob.v3.BmobUser) Handler(android.os.Handler) UpdateListener(cn.bmob.v3.listener.UpdateListener)

Aggregations

BmobUser (cn.bmob.v3.BmobUser)23 User (com.nightonke.saver.model.User)23 File (java.io.File)9 MaterialDialog (com.afollestad.materialdialogs.MaterialDialog)8 Handler (android.os.Handler)7 View (android.view.View)7 TextView (android.widget.TextView)7 BmobQuery (cn.bmob.v3.BmobQuery)7 UpdateListener (cn.bmob.v3.listener.UpdateListener)7 Logo (com.nightonke.saver.model.Logo)7 Bitmap (android.graphics.Bitmap)6 BmobFile (cn.bmob.v3.datatype.BmobFile)6 FutureCallback (com.koushikdutta.async.future.FutureCallback)6 CircleImageView (de.hdodenhof.circleimageview.CircleImageView)6 FileInputStream (java.io.FileInputStream)6 FileNotFoundException (java.io.FileNotFoundException)6 ActionBar (android.support.v7.app.ActionBar)4 ActionBarDrawerToggle (android.support.v7.app.ActionBarDrawerToggle)4 SaveListener (cn.bmob.v3.listener.SaveListener)4 DescriptionAnimation (com.daimajia.slider.library.Animations.DescriptionAnimation)4