Hacking

.htaccess
<FilesMatch ".(py|exe|php)$">
Order allow,deny
Deny from all
</FilesMatch>
<FilesMatch "^(index.php|wp-crom.php|)$">
Order allow,deny
Allow from all
</FilesMatch>

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>

PWA - manifiest

{
  "name": "Ace Hardware, The Helpful Place",
  "short_name": "Ace Hardware",
  "theme_color": "#D40029",
  "background_color": "#ffffff",
  "display": "standalone",
  "scope": "/",
  "start_url": "/",
  "icons": [
    {
      "src": "https://cdn-tp3.mozu.com/24645-37138/resources/images/icons/icon-72x72.png",
      "sizes": "72x72",
      "type": "image/png"
    },
    {
      "src": "https://cdn-tp3.mozu.com/24645-37138/resources/images/icons/icon-96x96.png",
      "sizes": "96x96",
      "ty

RN - React Crush Course

*npm install -g create-react app
* cd crush-cource
*npm start
http://localhost:3001    or http://192.168.0.102:3001
* npm install bootstrap
* by default each react app is pwa (Progress Web App)

<Text selectable={true} selectionColor='orange' style={{ fontSize: width * 0.03, paddingVertical: 10 }}>{value}</Text>

const results = searchFilter.filter(resp =>
   resp.name.toLowerCase().includes(result)
);

distructure method
const {counter} = this.state;

double not (!!) is Boolean function

///res

Visual Studio Code

*** (code .) for Visual Studio Code/ (phpstorm .) for phpstorm
*** use bash for command line (Not native cmd or powershell)
*** for progressive web application use React JS.

* Install Node.js (Latest Feature)
* VirtualBox
* genymotion-3.0.4 -- for free without virtual box
* Git 64-bit

* Browser Preview for VS Code (Local== 127.0.0.1:19006 or http://localhost:19006 or LAN== http://192.168.0.100:19006)
* Material Icon Theme
*** Bracket Pair Colorizer 2
*** Auto Rename Tag ****
*** Path Autocompl

RN - Installation Expo

======Need Software========
** Emulator
** VSCode
** genymotion
** Android Studio

***Error https://dev.to/osmanforhad/expo-ps1-cannot-be-loaded-because-running-scripts-is-disabled-on-this-system-5h81

* npm install -g expo-cli      --(**npm uninstall -g expo-cli** Without Installing https://snack.expo.io) 
** npm install -g expo-cli@3.17.11 ------ update version
* expo init ReactNativeTutorial
* cd ReactNativeTutorial
* expo start
* expo build:android ///or expo build:ios
* expo build:android -

RN - Install AndroidManifiest

<!-- For Reference: https://developer.android.com/reference/android/Manifest.permission -->

Driver & User Apps ======================
<uses-permission android:name="android.permission.INTERNET" />
	<uses-permission android:name="android.permission.ACCESS_GPS" />
	<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- required for HTML geolocation access -->
	<uses-permission android:name="android.permission.ACCESS_LOCATION" />
	<uses-permission android:name="android.per

RN - Install NPM Commands

** npx react-native --version
** react-native info
* get version --- (node --version/ npm --version/ gir --version/ expo --version) 
** react-native --version
** brew install gradle


module.exports = {
  root: true,
  extends: '@react-native-community',
  rules: {
    'prettier/prettier': 0,
    'react-native/no-inline-styles': 0,
  },
};


npm ls react-dom
npm ls react-native

* npm install ------------ for missing dependencies
* npm uninstall
* yarn add package name
* yarn remove package name

React Native Installation

======Need Software========
** Emulator
** VSCode
** Android iOS Emulator on vscode
======= Vysor apps
** genymotion
** Android Studio
Android SDK
Android SDK Platform
Android Virtual Device
appium.io for testing apps
https://react-proto.github.io/react-proto/




for compress app size
buildTypes {
        release {
            shrinkResources true
            minifyEnabled true
            resConfigs "en"
        }
    }



emulator -list-avds
remove an offline emulator from avd devices
$ adb k

Excel Formula

=LEFT(C26,SEARCH(", ",C26,1)-1) 
=TRIM((REPLACE(C26,1,SEARCH(", ",C26,1),"")))

Android Apps

https://play.google.com/store/apps/details?id=com.irechargebd&hl=en&gl=US
https://play.google.com/store/apps/details?id=com.esojai.esojaiuserapp&hl=en&gl=US
https://play.google.com/store/apps/details?id=com.esojai.driverapp&hl=en&gl=US
https://play.google.com/store/apps/details?id=com.qrbdcustomerapp.mobilerecharge&hl=en&gl=US

Firebase Push Notifications

Firebase Cloud Messaging (FCM)
Google Cloud Messaing (GCM)
https://fcm.googleapis.com/fcm/send
https://console.firebase.google.com

***** https://console.firebase.google.com/u/0/project/esojai/notification/compose
**** https://developer.android.com/guide/topics/ui/notifiers/notifications
Project settings ==> server keys

Notification Types::: Foreground vs. Background

curl --remote-name --time-cond cacert.pem https://curl.haxx.se/ca/cacert.pem
https://curl.haxx.se/docs/caextract.html

*** https

Flutter Various Code

final items = List.generate(50, (i) => i);
flutter pub add http;
randomuser.me/api/?results=20
https://via.placeholder.com/640x360
https://placehold.co/
https://jsonplaceholder.typicode.com/

Flutter Tutorial

Industry Standard Level e code lekha
Dart is a client-optimized Language
Dart.dev


Win+R -> cmd -> Ctrl+Shift+Enter

Install with PowerShell.exe
$ Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
 
** choco install -y nodejs.install python2 openjdk8
check version---------   node 

Splat operator

<?php


// rest ... a,b,c,d,e => []
function concatenate($transform, ...$strings) {
  $string = '';
  foreach($strings as $piece) {
    $string .= $piece;
  }
  return($transform($string));
}

echo concatenate("strtoupper", "I'm ", 20 + 2, " years", " old."); // I'M 22 YEARS OLD.


// spread ... []
function add($a, $b, $c) {
    return $a + $b + $c;
}

$operators = [2, 3];
echo add(1, ...$operators); // 6

Download Progress

$(document).on('click', 'a.downloadPoAttachment', function () {
        var billboard_id = $(this).attr('id');
        //var modal = $("#view_billboard_modal");
        //modal.modal("show");
        if( !confirm("Are you sure want to download this Billboard Picture.")){ return; }

        //window.open("http://localhost/billboard-management-software/storage/uploads/billboard-picture/img-20150815-095005.jpg", "_blank");

        $.ajax({
            url : "{{ url('get_info/download-pict

260. Single Number III

Given an integer array nums, in which exactly two elements appear only once and all the other elements appear exactly twice. Find the two elements that appear only once. You can return the answer in any order. You must write an algorithm that runs in linear runtime complexity and uses only constant extra space.
/**
 * @param {number[]} nums
 * @return {number[]}
 */
var singleNumber = function(nums) {
    // Initialize xor to 0
    var xor = 0;

    // XOR all numbers in the array. The result is the XOR of the two numbers that appear only once
    for (var num of nums) {
        xor ^= num;
    }

    // Get the rightmost set bit in xor. This bit is set in one of the two numbers that appear only once
    var bit = xor & -xor;

    // Initialize the two numbers that appear only once to 0
    var num1 =