Tuesday, October 20, 2026

Hotel Google Business Audit

Gala Vista Selam by Sarveswaran V  90807 31865

1) Google Rating 3.0 (138 Review) :
Why review is too low
Review less due to OYO. 
Sentiments of Guest:
Service, Cleanliness, Bathroom,

Why are you not asking review?
During stay, keep asking about their stay

How often you visiting the property?: Day by Day

Suggestion: Focus on Cleanliness and take more reviews


2) Old Picture
Try to add new Photos of your hotel. If your rating is low thenafter for new picture, guest will come.

 
3) Comparison rate OTA vs Self Website vs Old

4) Online Presence is very less. Make Social Profile like Facebook, Instagram, Youtube for Citation
Find Authority of your hotel

5) No Website

6) We need to be market our hotel.

Watch Hotel Health Check Session

Suggestion:
1) Photoshoot
2) Connect with Cooperate like Jeweler Shop 
3) Neat, Hygiene

Tuesday, October 6, 2026

How to get refund from Personal Facebook Ad Account

You have to first Deactivate the Personal Facebook Ad Account.

For Deactivate ad account, you will go to adsmanager.facebook.com --> Ad Account Settings  --> By default Ad account Setup selected --> click on Deactivate ad account



Now you open Payment Settings, you will see the message that Ad account pending closure. 
It may take up to 2 business days to complete this process. Once closed, you won't be able to run ads on this account.



When closed, then we get the option of refund in Payment Settings.

Wednesday, September 8, 2021

Decide Processor

 

https://laptopmedia.com/in/top-laptop-cpu-ranking/

11th-generation-intel-core-i5-processors list

https://ark.intel.com/content/www/us/en/ark/products/series/202985/11th-generation-intel-core-i5-processors.html

Rank-16

Intel® Core™ i5-11260H Processor Launched Q2'21 6 4.40 GHz 12 MB Intel® Smart Cache

10th-generation-intel-core-i5-processors list

https://ark.intel.com/content/www/us/en/ark/products/series/195732/10th-generation-intel-core-i5-processors.html

Rank-22

Intel® Core™ i5-11400H Processor Launched Q2'21 6 4.50 GHz 12 MB Intel® Smart Cache

Rank-26

Intel® Core™ i5-10500H Processor Launched Q4'20 6 4.50 GHz 2.50 GHz 12 MB Intel® Smart Cache



10th-generation-intel-core-i7-processors list

https://ark.intel.com/content/www/us/en/ark/products/series/195734/10th-generation-intel-core-i7-processors.html

Rank-17

Intel® Core™ i7-10875H Processor Launched Q2'20 8 5.10 GHz 2.30 GHz 16 MB Intel® Smart Cache

Rank-31

Intel® Core™ i7-10750H Processor Launched Q2'20 6 5.00 GHz 2.60 GHz 12 MB Intel® Smart Cache

Lenovo Legion 5 Core i7 10th Gen - (16 GB/512 GB SSD/Windows 10 Home/4 GB Graphics/NVIDIA GeForce GTX 1650/120 Hz) 15IMH05 Gaming Laptop  (15.6 Inch, Phantom Black, 2.3 KG

https://www.flipkart.com/lenovo-legion-5-core-i7-10th-gen-16-gb-512-gb-ssd-windows-10-home-4-graphics-nvidia-geforce-gtx-1650-120-hz-15imh05-gaming-laptop/p/itm799c8d74d9b0a?pid=COMG4BHEAZTYYSUM&affid=snikolovl

11th-generation-intel-core-i7-processors list

https://ark.intel.com/content/www/us/en/ark/products/series/202986/11th-generation-intel-core-i7-processors.html

Specs table

Intel Core i7-10875HIntel Core i7-10750H
ArchitectureComet Lake HComet Lake H
Cores / Threads8/166/12
Clock Speeds – Base/Boost2.30 – 5.10GHz2.60 – 5.00GHz
Cache16MB12MB
Lithography14nm14nm
TDP45W45W
Memory typeDDR4-2933MHzDDR4-2933MHz
Integrated GPUIntel UHD Graphics 630Intel UHD Graphics 630

No. of Cores/ Max Turbo Frequency/ Processor Base Frequency/ Cache



https://www.quora.com/Which-is-the-best-octa-core-16GB-RAM-laptop-which-I-can-use-for-programming-and-virtualization-and-costs-under-70K

https://laptopmedia.com/in/laptop-specs/lenovo-legion-5i-15-887/


https://www.investorsunderground.com/how-to-build-a-day-trading-computer/

Friday, April 10, 2020

My Quick Find Gallery (Part 5 - Share, Delete and Update Image)

12) Share Image
If your targetSdkVersion >= 24, then we have to use FileProvider class to give access to the particular file or folder to make them accessible for other apps.
Steps to replace file:// URI with content:// URI:
i) Add a FileProvider <provider> tag in AndroidManifest.xml under <application> tag:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    <application
        ...
         <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="com.myfileprovider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/file_provider_paths" />
         </provider>
    </application>
</manifest>
ii) Then create a file_provider_paths.xml file in res/xml folder:
<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <external-path name="share" path="/" />
</paths>
iii) ShowPhoto.java
@Override
public boolean onOptionsItemSelected(MenuItem item) {
     switch (item.getItemId()) {
       case R.id.action_share:
         File file = new File(searchFilesPath.get(selectedImagePosition));
         Intent shareIntent = new Intent(Intent.ACTION_SEND);
         Uri picUri = FileProvider.getUriForFile(this, "com.myfileprovider", file);
         shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
         shareIntent.setType("image/*");
         shareIntent.putExtra(Intent.EXTRA_STREAM, picUri);
         startActivity(Intent.createChooser(shareIntent, "Share with"));
         break;
       default:
         break;
     }
     return true;
}
13) Delete Image
Call function alert() on Delete Button in ShowPhoto.java
public void alert(){
        AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
        alertDialogBuilder.setTitle("Delete Photo");
        alertDialogBuilder
                .setMessage("are you sure you want to delete ?")
                .setCancelable(false)
                .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int id) {
                        delete();
                    }
                })
                .setNegativeButton("No",new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int id) {
                        dialog.cancel();
                    }
                });
        AlertDialog alertDialog = alertDialogBuilder.create();
        alertDialog.show();

}
public void delete(){
        File fdelete = new File(searchFilesPath.get(selectedImagePosition));
        if (fdelete.exists()) {
            if (fdelete.delete()) {
//Toast.makeText(this, "Successfully Deleted", Toast.LENGTH_SHORT).show();
                Intent intent = new Intent();
                setResult(RESULT_OK, intent);
                finish();
            } else {
                Toast.makeText(this, "File not deleted", Toast.LENGTH_LONG).show();
            }
        }
}
14) Update Image
Call function alert() on Update Button in EditPhoto.java
public void alert(){
        AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
        alertDialogBuilder.setTitle("Update Tag or Photo");
        alertDialogBuilder
                .setMessage("are you sure you want to update ?")
                .setCancelable(false)
                .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int id) {
                        update();
                    }
                })
                .setNegativeButton("No",new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int id) {
                        dialog.cancel();
                    }
                });
        AlertDialog alertDialog = alertDialogBuilder.create();
        alertDialog.show();

}
public void update(){
        String tag=tag_editText.getText().toString();
        if(tag.matches("")) {
            Toast.makeText(this, "Please Enter Tag", Toast.LENGTH_LONG).show();
        }
        else {
            if(replaceToInternalStorage(bitmap,tag.trim())) {
                Intent intent = new Intent();
                setResult(RESULT_OK, intent);
                finish();
            }
            else {
                Toast toast = Toast.makeText(this, "File not updated", Toast.LENGTH_LONG);
                toast.setGravity(Gravity.CENTER, 0, 0);
                toast.show();
            }
        }
}
private boolean replaceToInternalStorage(Bitmap bitmapImage, String filename) {
        if (filename.equals(editFileName) && isImageChange == 0)
            return true;
        else if (!filename.equals(editFileName) && isImageChange == 0) {
            File oldFilePath = new File(editFilePath);
            File directory = oldFilePath.getParentFile();
            File newFilePath = new File(directory, filename + ".jpeg");
            int i = 2;
            while (newFilePath.exists()) {
                newFilePath = new File(directory, filename + "[" + i + "].jpeg");
                i++;
            }
            oldFilePath.renameTo(newFilePath);
            return true;
        }
        else if (isImageChange == 1) {
            if(delete(editFilePath)) {
                File mypath = new File(editFilePath);
                if(!filename.equals(editFileName)){
                    File oldFile = new File(editFilePath);
                    File directory = oldFile.getParentFile();
                    File newFile = new File(directory, filename + ".jpeg");
                    int i = 2;
                    while (newFile.exists()) {
                        newFile = new File(directory, filename + "[" + i + "].jpeg");
                        i++;
                    }
                    mypath=newFile;
                }
                FileOutputStream fos = null;
                try {
                    fos = new FileOutputStream(mypath);
                    bitmapImage.compress(Bitmap.CompressFormat.JPEG, 85, fos);
                    return true;
                } catch (Exception e) {
                    Toast.makeText(this, e.toString(), Toast.LENGTH_SHORT).show();
                    return false;//e.printStackTrace();
                } finally {
                    try {
                        fos.close();
                    } catch (IOException e) {
                        Toast.makeText(this, e.toString(), Toast.LENGTH_SHORT).show();
                        return false;//e.printStackTrace();
                    }
                }
            }
            else
                return false;
        }
        else
            return false;
}

My Quick Find Gallery (Part 4 - Show Image with Zoom, Drag and Slide Features)

11) Show Image with features of Zoom, Drag and Slide
Subtasks:
i) Get the set of images and selected image position from Parent Activity and show selected image in ImageView.
activity_show_photo.xml
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".ShowPhoto">
    <ImageView
        android:id="@+id/imageView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="0dp"
        android:layout_marginStart="0dp"
        android:layout_marginTop="8dp"
        android:adjustViewBounds="true"
        android:scaleType="fitCenter"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>

ShowPhoto.java
ImageView selectedImage;
ArrayList<String> searchFilesPath;
ArrayList<String> searchFilesName;
int selectedImagePosition;
@Override
 protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_show_photo);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        selectedImage = (ImageView) findViewById(R.id.imageView);
        try {
            Intent intent = getIntent(); // get Intent which we set from Previous Activity
            selectedImagePosition = intent.getIntExtra("selectedImagePosition",0);
            searchFilesPath=intent.getStringArrayListExtra("searchFilesPath");
            searchFilesName=intent.getStringArrayListExtra("searchFilesName");
          //from file path
          Bitmap myBitmap = BitmapFactory.decodeFile(searchFilesPath.get(selectedImagePosition));
            selectedImage.setImageBitmap(myBitmap);
            getSupportActionBar().setTitle(searchFilesName.get(selectedImagePosition));
        }
        catch(Exception e) {
            Toast.makeText(this, e.toString(), Toast.LENGTH_LONG).show();
        }
}
ii) setOnTouchListener to ImageView for Zoom, Drag and Slide Features.
ShowPhoto.java
@Override
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_show_photo);
selectedImage = (ImageView) findViewById(R.id.imageView);
selectedImage.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
                ImageView view = (ImageView) v;
                view.bringToFront();
                viewTransformation(view, event);
                return true;
            }
        });
}
//====================================================================
   //ImageView Zoom-in and Zoom-Out
  //ZOOM (two finger) / ROTATION (two finger) / DRAG (Single finger)
//====================================================================
    float[] lastEvent = null;
    float d = 0f;
    float newRot = 0f;
    private boolean isZoomAndRotate;
    private boolean isOutSide;
    private static final int NONE = 0;
    private static final int DRAG = 1;
    private static final int ZOOM = 2;
    private int mode = NONE;
    private PointF start = new PointF();
    private PointF mid = new PointF();
    float oldDist = 1f;
    private float xCoOrdinate, yCoOrdinate;

    private int isPreviousMode = NONE;

    private void viewTransformation(View view, MotionEvent event) {

        switch (event.getAction() & MotionEvent.ACTION_MASK) {
            case MotionEvent.ACTION_DOWN:
                // executed after the user touch on the screen
                xCoOrdinate = view.getX() - event.getRawX();
                yCoOrdinate = view.getY() - event.getRawY();
                start.set(event.getX(), event.getY());
                isOutSide = false;
                mode = DRAG;
                lastEvent = null;
                break;
            case MotionEvent.ACTION_POINTER_DOWN:
                oldDist = spacing(event);
                if (oldDist > 10f) {
                    midPoint(mid, event);
                    mode = ZOOM;
                }
                lastEvent = new float[4];
                lastEvent[0] = event.getX(0);
                lastEvent[1] = event.getX(1);
                lastEvent[2] = event.getY(0);
                lastEvent[3] = event.getY(1);
                //d = rotation(event);
                break;
            case MotionEvent.ACTION_UP:
                // executed after the user release the touch on the screen
                isZoomAndRotate = false;
                if (mode == DRAG) {
                    float x = event.getX();
                    float y = event.getY();
                    if (isPreviousMode != ZOOM) {
                        if (start.x - x > 1) { //using start.x-x>1, not start.x>x because start.x>x executes in case of tapping also ()
                            selectedImagePosition = selectedImagePosition + 1;
                            if (selectedImagePosition <= maxImagePosition) {
selectedImage.setImageBitmap(BitmapFactory.decodeFile(searchFilesPath.get(selectedImagePosition)));
getSupportActionBar().setTitle(searchFilesName.get(selectedImagePosition));
                                isPreviousMode = NONE;
                            } else
                                selectedImagePosition = maxImagePosition;//when reach to last picture and thenafter move the finger again and again then selectedImagePosition values go to very high one by one therefore put the last picture index
                        } else if (x - start.x > 1) {
                            selectedImagePosition = selectedImagePosition - 1;
                            if (selectedImagePosition >= 0) {
selectedImage.setImageBitmap(BitmapFactory.decodeFile(searchFilesPath.get(selectedImagePosition)));
getSupportActionBar().setTitle(searchFilesName.get(selectedImagePosition));
                                isPreviousMode = NONE;
                            } else
                                selectedImagePosition = 0;
                        }
                    }
                }
            case MotionEvent.ACTION_OUTSIDE:
                isOutSide = true;
                mode = NONE;
                lastEvent = null;
            case MotionEvent.ACTION_POINTER_UP:
                mode = NONE;
                lastEvent = null;
                break;
            case MotionEvent.ACTION_MOVE:
                // executed when user move the finger on the screen
                if (!isOutSide) {
                    if (mode == DRAG) {
                        isZoomAndRotate = false;
                        if(isPreviousMode == ZOOM)
                            view.animate().x(event.getRawX() + xCoOrdinate).y(event.getRawY() + yCoOrdinate).setDuration(0).start();
                    }
                    if (mode == ZOOM && event.getPointerCount() == 2) {
                        float newDist1 = spacing(event);
                        if (newDist1 > 10f) {
                            float scale = newDist1 / oldDist * view.getScaleX();
                            view.setScaleX(scale);
                            view.setScaleY(scale);
                            isPreviousMode = ZOOM;
                        }
                        if (lastEvent != null) {
                            //newRot = rotation(event);
                            //view.setRotation((float) (view.getRotation() + (newRot - d)));
                        }
                    }
                }
                break;
        }
    }
    private float rotation(MotionEvent event) {
        double delta_x = (event.getX(0) - event.getX(1));
        double delta_y = (event.getY(0) - event.getY(1));
        double radians = Math.atan2(delta_y, delta_x);
        return (float) Math.toDegrees(radians);
    }
    private float spacing(MotionEvent event) {
        float x = event.getX(0) - event.getX(1);
        float y = event.getY(0) - event.getY(1);
        return (int) Math.sqrt(x * x + y * y);
    }
    private void midPoint(PointF point, MotionEvent event) {
        float x = event.getX(0) + event.getX(1);
        float y = event.getY(0) + event.getY(1);
        point.set(x / 2, y / 2);
    }