<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected {color:[[ColorPalette::PrimaryDark]];
	background:[[ColorPalette::TertiaryPale]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}

.wizard .notChanged {background:transparent;}
.wizard .changedLocally {background:#80ff80;}
.wizard .changedServer {background:#8080ff;}
.wizard .changedBoth {background:#ff8080;}
.wizard .notFound {background:#ffff80;}
.wizard .putToServer {background:#ff80ff;}
.wizard .gotFromServer {background:#80ffff;}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}
.readOnly {background:[[ColorPalette::TertiaryPale]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:alpha(opacity=60);}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0 1em 1em; left:0; top:0;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 0.3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0 0; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0;}
.wizardFooter .status {padding:0 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0 0 0.5em;}
.tab {margin:0 0 0 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0 0.25em; padding:0 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0 3px 0 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0; font-size:.9em;}
.editorFooter .button {padding-top:0; padding-bottom:0;}

.fieldsetFix {border:0; padding:0; margin:1px 0px;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0; right:0;}
#backstageButton a {padding:0.1em 0.4em; margin:0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin-left:3em; padding:1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none !important;}
#displayArea {margin: 1em 1em 0em;}
noscript {display:none;} /* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
}
/*}}}*/
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser excludeLists'></span></div>
<!--}}}-->
To get started with this blank [[TiddlyWiki]], you'll need to modify the following tiddlers:
* [[SiteTitle]] & [[SiteSubtitle]]: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* [[MainMenu]]: The menu (usually on the left)
* [[DefaultTiddlers]]: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
These [[InterfaceOptions]] for customising [[TiddlyWiki]] are saved in your browser

Your username for signing your edits. Write it as a [[WikiWord]] (eg [[JoeBloggs]])

<<option txtUserName>>
<<option chkSaveBackups>> [[SaveBackups]]
<<option chkAutoSave>> [[AutoSave]]
<<option chkRegExpSearch>> [[RegExpSearch]]
<<option chkCaseSensitiveSearch>> [[CaseSensitiveSearch]]
<<option chkAnimate>> [[EnableAnimations]]

----
Also see [[AdvancedOptions]]
<<importTiddlers>>
[[30 GENIUS HACKS FOR YOUR LIFE|https://www.youtube.com/watch?v=CdLQ-mJi7rU]]
https://www.facebook.com/5min.crafts/
[[Dell PowerEdge M420 Blade Server Overview |https://www.youtube.com/watch?v=iKIG430z0PI]]
''Up to 32 blades in just 10U of rack space''
Help improve efficiency and business continuity, and finish work fast with the exceptional computing density of the PowerEdge™ M420 quarter-height blade.
[img[https://oniudranrael.files.wordpress.com/2019/01/largepng.png]]
ref:https://www.dell.com/en-au/work/shop/cty/dell-poweredge-12g-m420-blade-server/spd/poweredge-m420

[img[https://oniudranrael.files.wordpress.com/2019/01/m1000with32m420bladesever.png]]
[img[https://oniudranrael.files.wordpress.com/2019/01/fabrica.png]]
[img[https://oniudranrael.files.wordpress.com/2019/01/fabricbc.png]]
Ref: http://bladesmadesimple.com/2012/05/details-on-the-dell-poweredge-m420-blade-server/
https://rmit.instructure.com/courses/47702/pages/ultrasonic-proximity-sensor
https://www.instructables.com/id/HC-SR04-Based-Door-Unlock-Detection-System/
https://randomnerdtutorials.com/complete-guide-for-ultrasonic-sensor-hc-sr04/ <== seems to be good one
https://www.diyspacepk.com/ultrasonic-distance-sensor-with-arduino/
http://jebbush.co/arduino-ultrasonic-sensor-project/ultrasonic-sensor-arduino-project-hub-arduino-ultrasonic-sensor-project/




http://blog.whatgeek.com.pt/arduino/arduino-hc-sr04-ultrasonic-sensor/
https://www.instructables.com/id/Arduino-Ultrasonic-Sensor-1/
https://arduino.stackexchange.com/questions/34112/arduino-ultrasensor-serial-monitor-outputs-garbage

Need to read
https://anttieloranta.wordpress.com/2014/02/04/hc-sr04_and_piezoelectric_sensor_arduino/


!others
http://techtweek.com/category/programming <== interesting
http://homepages.ihug.com.au/~npyner/Arduino/GUIDE_2BT.pdf <== interesting &&
http://homepages.ihug.com.au/~npyner/Arduino/BT_2_WAY.ino  <== 
https://www.diyspacepk.com/techies/
Jancy 21051985
Pirapu 27101987
Selvam 30101952
Iyamani


Sivanathan 0712
Pirakathi  0612

Nather 14th April 1955
Mala  
Arani 
David

Mallika 20th April 1953
[[How to access a SFTP server using SSH.NET |https://ourcodeworld.com/articles/read/369/how-to-access-a-sftp-server-using-ssh-net-sync-and-async-with-c-in-winforms]]
https://stackoverflow.com/questions/40122979/using-ssh-net-to-connect-to-remote-hosts
https://dotnetfiddle.net/FpKt0b
[[ssh.net Example - Keybased Authentication, File Upload, Shell Commands| https://gist.github.com/juanfranblanco/4f4edf20744301d747b9bf1a6edcb8b2]]
https://stackoverflow.com/questions/11169396/c-sharp-send-a-simple-ssh-command
https://codinginfinite.com/upload-file-sftp-server-using-csharp-net-core-ssh/
https://www.codeproject.com/Tips/1111060/Upload-File-to-SFTP-Site-with-Csharp-in-Visual-Stu

https://www.youtube.com/watch?v=0lOOuGJOg1o <== youtube demo seems to be good
https://github.com/TieuThien90bn/demo


https://github.com/bsitcedric/rencishhmysql   with youtube
https://www.youtube.com/watch?v=o7UlJHdPPBQ



https://github.com/foyzulkarim/OnlineCourse



''Send sms using C#''
https://github.com/bsitcedric/C-smsAT/blob/master/SmsEngine.cs

https://www.techsupportnep.com/programming/csharp/create-login-window-c-using-sql-server-database-visual-studio.html
https://www.youtube.com/watch?v=QmT1oec1YBc


https://www.youtube.com/watch?v=ZHOpVomL5Os
https://css-tricks.com/what-is-svg-good-for/
!Timestamps
{{{
echo time();
}}}
!Dates
{{{
echo date("Y-m-d","1359780799");
}}}
!Times
{{{
echo date( "H:i:s","1359780799");
}}}
!Date and Time
{{{
echo date("Y-m-d H:i:s",mktime(6,30,51,12,01,1999));
// mktime(hour,minute,second,month,day,year)
}}}
!Date and Time Formats
|a	|‘am’ or ‘pm’ (lowercase)|	pm|
|A	|‘AM’ or ‘PM’ (uppercase)	|PM|
|d	|Day of month, a number with leading zeroes|	20|
|D	|Day of week (three letters)	|Thu|
|F	|Month name	|January|
|h	|Hour (12-hour format – leading zeroes)	|12|
|H	|Hour (24-hour format – leading zeroes)	|22|
|g	|Hour (12-hour format – no leading zeroes)	|12|
|G	|Hour (24-hour format – no leading zeroes)	|22|
|i	|Minutes ( 0 – 59 )	|23|
|j	|Day of the month (no leading zeroes	|20|
|l (Lower ‘L’)	|Day of the week	|Thursday|
|L	|Leap year (‘1’ for yes, ‘0’ for no)	|1|
|m	|Month of year (number – leading zeroes)	|1|
|M	|Month of year (three letters)	|Jan|
|r	|The RFC 2822 formatted date	|Thu, 21 Dec 2000 16:01:07 +0200|
|n	|Month of year (number – no leading zeroes)	|2|
|s	|Seconds of hour	|20|
|U	|Time stamp	|948372444|
|y	|Year (two digits)	|06|
|Y	|Year (four digits)	|2006|
|z	|Day of year (0 – 365)	|206|
|Z	|Offset in seconds from GMT	|+5|
Re: https://www.afterhoursprogramming.com/tutorial/php/date-and-time/
[[MainMenu]]
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4496944/
[[What Is an AZW File?|https://www.lifewire.com/azw-file-2619764]]
https://www.youtube.com/watch?v=SQBBAjDJZAw

https://www.youtube.com/watch?v=3ZWemK7AWcI&feature=youtu.be\
https://www.youtube.com/watch?v=40ld-JeEbsA
https://www.youtube.com/watch?v=S_gV9RchfP0

https://www.youtube.com/watch?v=t6Ta_r9wT7k
https://academy.autodesk.com/curriculum/product-design-fusion-360
https://www.txplore.com/p/designing-for-3d-printing-with-fusion-3601/?product_id=690597&coupon_code=9PT43PZZ&utm_source=drip&utm_medium=email&utm_campaign=Designing+for+3D+Printing+with+Fusion+360+Announcement&utm_content=Introducing+our+new+3D+design+%26+printing+course
https://www.byron-bay.com/crystalcastle/
http://byronviewfarm.com/
https://www.visitnsw.com/destinations/north-coast/byron-bay-area/byron-bay/accommodation/byron-view-farm
https://www.ytravelblog.com/byron-bay-beaches/
https://www.suffolkbeachfront.com.au/secret-beaches-byron-bay-region/

http://www.thecube.qut.edu.au/visit/


https://www.papersizes.org/a-paper-sizes-tstb.htm?utm_expid=76296969-1692.0bvwprvgRDuFGhMp6EjHUA.2&utm_referrer=https%3A%2F%2Fwww.google.com%2F

installation
basic commands
[[mirroring git-test|git clone https://shansara@bitbucket.org/shansara/git-test.git]]
https://www.masterfoods.com.au/our-range/herbs-spices-seasonings/herbs-spices-a-z/?AZIndex=b&altTemplate=ProductListingAllPage
https://www.vegetables.co.nz/vegetables-a-z/
https://www.vegetables.co.nz/vegetables-a-z/cabbages/
http://www.halfyourplate.ca/fruits-and-veggies/fruits-a-z/
https://www.thewindowsclub.com/turn-off-windows-update-in-windows-10
https://www.thewindowsclub.com/whitelist-website-thewindowsclub
https://www.drivereasy.com/knowledge/how-to-stop-windows-10-update/
https://techdows.com/2016/08/uninstall-windows-10-upgrade-assistant-anniversary-update.html
https://support.microsoft.com/en-au/help/4023057/update-to-windows-10-versions-1507-1511-1607-and-1703-for-update-relia
https://steamcommunity.com/discussions/forum/11/1520386297696480344
https://www.reddit.com/r/Windows10/comments/83jb85/q_should_kb4023057_be_showing_as_an_installed_app/
https://www.askwoody.com/2018/microsoft-releases-new-version-of-win10-patch-kb-4023057/
https://www.electrictoolbox.com/list-table-structure-mysql-command-line/




Serial cables should be 259992–001 or 316131-001, AFAIR.
[[கேட்டதை அருளும் கேதார கவுரி விரதம்|http://www.tamilmurasu.org/Inner_Tamil_News.asp?Nid=36301]]
[[திருமந்திரம் - பாகம் 11 "சைவ சித்தாந்த ரத்தினம் - நாகேந்திரம் கருணாநிதி"|http://www.ourmyliddy.com/nagenthiram-karunanithy/thirumanthiram-11]]
http://arundhtamil.blogspot.com/
http://sammatham.com/
http://www.ujiladevi.in/2012/03/blog-post_23.html
https://swasthiktv.com/thirumoolar-kattum-lingamgal/
https://dheivegam.com/growing-siva-lingam/
http://iloapp.swedenganeshtemple.com/blog/info?ShowFile&doc=1246605471.pdf

http://www.karainagar.com/pages/category/%E0%AE%88%E0%AE%B4%E0%AE%A4%E0%AF%8D%E0%AE%A4%E0%AF%81%E0%AE%9A%E0%AF%8D%E0%AE%9A%E0%AE%BF%E0%AE%A4%E0%AE%AE%E0%AF%8D%E0%AE%AA%E0%AE%B0%E0%AE%AE%E0%AF%8D/%E0%AE%A4%E0%AE%BF%E0%AE%B0%E0%AF%81%E0%AE%B5%E0%AE%BF%E0%AE%B4%E0%AE%BE%E0%AE%AA%E0%AF%8D-%E0%AE%AA%E0%AE%9F%E0%AE%99%E0%AF%8D%E0%AE%95%E0%AE%B3%E0%AF%8D/page/9?ak_action=reject_mobile
http://www.karainagar.com/pages/
http://www.karainagar.co/category/karainagar/page/6/
http://www.karainagar.co/

http://www.madathuveli.com/
http://www.madathuveli.com/

http://tamil.eenaduindia.com/Rainbow/SoulSpace/2017/12/25193627/history-of-shivalinga.vpf
http://ilakkiyainfo.com/%E0%AE%86%E0%AE%A3%E0%AF%8D%E0%AE%95%E0%AF%81%E0%AE%B1%E0%AE%BF%E0%AE%AF%E0%AF%88-%E0%AE%AA%E0%AE%BE%E0%AE%9F%E0%AE%BE%E0%AE%AF%E0%AF%8D-%E0%AE%AA%E0%AE%9F%E0%AF%81%E0%AE%A4%E0%AF%8D%E0%AE%A4%E0%AF%81/
http://shivasivam.blogspot.com/2015/08/shiva-lingam.html
https://shaivam.org/news-shaivam-related-news-from-media

https://m.dailyhunt.in/news/india/tamil/punnagai-epaper-punnagai/sivalingam+barri+rashya+vinjnjaniyin+aaraycchiyil+kidaitha+mudivu-newsid-86804516

I201 CentOS Network setup

https://lintut.com/how-to-setup-network-after-rhelcentos-7-minimal-installation/  <== workded for me
Visa:
https://www.vfsglobal.com/en/individuals/index.html
visa Process:
http://www.vfsglobal.com/india/australia/visa_services/tourist.html#transit_processing

''Mahabalipuram / Mamallapuram, Chennai.''
https://www.youtube.com/watch?v=jRqrga-DyYw

!Radha suggestion
you can visit the following and depend on your interest,time distance and the money to spend. 
1: Thanjavur Chola temple, Gangai konda cholapuram, Maveerar ninavu mandapam , Thamil University 
2:Mamallapuram 
3:Madurai : Meenachi Ammankovil and other heritage sites 
4:Kumbakonam 
5:Palluchanthai Puthur, keeladi archaeological site 
6:Booluvampatti coimbatore 
7:Kanyakumari 
8:Rameswaram 
9:Talamalai 
10:Tiruvannam
[[7 Wonders of India: Thanjavur Chola Temple|https://www.youtube.com/watch?v=cruwhRpBcwo]]
{{{
Located in Tamil Nadu, the Brihadisvara temple at Thanjavur was built by the great 
ruler Rajaraja Chola of the Chola dynasty. The 10th century AD site is an example of 
Dravidian temple architecture. The central temple called the Periya Koyil, or big temple, 
stands inside a fort whose walls were built later on in the 16th century. The Great 
Living Chola Temples consist of the 11th century Brihadisvara temple at Thanjavur, 
the 11th century Brihadisvara temple at Gangaikondacholisvaram, and the 12th 
century Airavateswara temple at Darasuram. Temple consists of the garbhagriha, 
ardhamandapa, mahamandapa and mukhamandapa and aligned on the east- west axis. 
This site is recognised by UNESCO.
}}}
https://www.youtube.com/watch?v=gcjytlV3qPE
Thanjavur is an important center of South Indian religion, art and architecture. Thanjavur paintings are rooted in tradition and known for their surface richness, vivid colors, compact composition and the glittering gold foils which are used to give the paintings their rich look. 

The paintings are notable for their adornment in the form of semi-precious stones, pearls, glass pieces and gold. The rich vibrant colors, dashes of gold, semi-precious stones and fine artistic work are characteristics of these paintings

[[ISSUES001]] <== Resolved. typo error. <title>Convert Fahrenheit to Celcius</tile>
!Not display
{{{
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Convert Fahrenheit to Celcius</tile>
</head>
<body>
<?php
  $far = 89;
  $cel=($far -32) * (5/9);
  echo "Temperature in Fahrenheit is : $far". "<br />";
  echo "Temperature in Celcius is : $cel". "<br />";
?>
</body>
</html>
}}}
!But it is OK in the following format
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Date and Time</title>
  </head>
  <body>
	<?php
  $far = 89;
  $cel=($far -32) * (5/9);
  echo "Temperature in Fahrenheit is : $far". "<br />";
  echo "Temperature in Celcius is : $cel". "<br />";
?>
  </body>
</html>
}}}
[[IT Master Pentesting|itm001]]
[[javascriptLesson 9 |https://www.youtube.com/watch?v=ZqxweU4mzn4&list=PLzr5fRV1AGV-bxStGzqBr8J6p1YXxbk1n&index=9]]
[[Links|JLinks]]
[[onchange  scale|js1001]]
[[yarn|js000]]

[[SVG]]
[[REACT|re00]]

[[Game|jsg001]]
[[Project|jp000]]







Read later about svg:
https://stackoverflow.com/questions/39193276/how-can-i-merge-two-shapes-in-svg  <== go through it

http://tavmjong.free.fr/blog/?cat=12

https://www.w3.org/TR/SVG/shapes.html
https://commons.wikimedia.org/wiki/SVG_examples

https://macwright.org/2013/06/25/just-enough-svg.html

http://taye.me/blog/svg/a-guide-to-svg-use-elements/

http://www.svgopen.org/2010/presentations/47-Mixing_Dynamic_SVG_with_User_Input/index.html

https://www.cardinalsolutions.com/blog/2014/12/export_svg_sharepoint_library
http://courses.coreservlets.com/Course-Materials/pdf/jsf/jsf2/JSF2-Composite-Components-4.pdf

https://addyosmani.com/resources/essentialjsdesignpatterns/book/

https://www.igniteui.com/data-chart/composite-chart

https://www.w3.org/TR/SVG/expanded-toc.html
https://www.w3.org/TR/SVGTiny12/paths.html

https://css-tricks.com/transforms-on-svg-elements/



https://channel9.msdn.com/Series/HTML5-CSS3-Fundamentals-Development-for-Absolute-Beginners/Working-with-SVG-in-HTML5-20
https://stackoverflow.com/questions/43304748/how-to-use-attribute-value-in-javascript-in-jsf-composite-component

https://www.slideshare.net/chanezon

https://www.thepolyglotdeveloper.com/2015/04/determine-if-a-number-is-prime-using-javascript/
http://webcheatsheet.com/javascript/if_else_switch.php
https://github.com/DanielGeek
https://wwwlyndacom.ezproxy.slq.qld.gov.au/learning-paths/Web/become-a-junior-wordpress-developer
https://wwwlyndacom.ezproxy.slq.qld.gov.au/WordPress-tutorials/Exploring-WordPress-theme-development-lyndacom/169877/183136-4.html
https://wwwlyndacom.ezproxy.slq.qld.gov.au/Web-Design-tutorials/Welcome/432037/474544-4.html
https://wwwlyndacom.ezproxy.slq.qld.gov.au/GitHub-tutorials/What-you-should-know-before-watching-course/378045/409354-4.html
https://wwwlyndacom.ezproxy.slq.qld.gov.au/WordPress-tutorials/WordPress-Building-Child-Themes/422838-2.html?srchtrk=index%3a15%0alinktypeid%3a2%0aq%3awordpress+themes%0apage%3a1%0as%3arelevance%0asa%3atrue%0aproducttypeid%3a2
https://wwwlyndacom.ezproxy.slq.qld.gov.au/Genesis-tutorials/WordPress-Genesis-Building-Child-Themes-from-Scratch/421805-2.html?srchtrk=index%3a34%0alinktypeid%3a2%0aq%3awordpress+themes%0apage%3a1%0as%3arelevance%0asa%3atrue%0aproducttypeid%3a2
https://wwwlyndacom.ezproxy.slq.qld.gov.au/Angular-tutorials/WordPress-Building-Apps-Angular/679642-2.html?srchtrk=index%3a36%0alinktypeid%3a2%0aq%3awordpress+themes%0apage%3a1%0as%3arelevance%0asa%3atrue%0aproducttypeid%3a2
[[English|lge000]]
/***
|''Name:''|LoadRemoteFileThroughProxy (previous LoadRemoteFileHijack)|
|''Description:''|When the TiddlyWiki file is located on the web (view over http) the content of [[SiteProxy]] tiddler is added in front of the file url. If [[SiteProxy]] does not exist "/proxy/" is added. |
|''Version:''|1.1.0|
|''Date:''|mar 17, 2007|
|''Source:''|http://tiddlywiki.bidix.info/#LoadRemoteFileHijack|
|''Author:''|BidiX (BidiX (at) bidix (dot) info)|
|''License:''|[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D ]]|
|''~CoreVersion:''|2.2.0|
***/
//{{{
version.extensions.LoadRemoteFileThroughProxy = {
 major: 1, minor: 1, revision: 0, 
 date: new Date("mar 17, 2007"), 
 source: "http://tiddlywiki.bidix.info/#LoadRemoteFileThroughProxy"};

if (!window.bidix) window.bidix = {}; // bidix namespace
if (!bidix.core) bidix.core = {};

bidix.core.loadRemoteFile = loadRemoteFile;
loadRemoteFile = function(url,callback,params)
{
 if ((document.location.toString().substr(0,4) == "http") && (url.substr(0,4) == "http")){ 
 url = store.getTiddlerText("SiteProxy", "/proxy/") + url;
 }
 return bidix.core.loadRemoteFile(url,callback,params);
}
//}}}
[[myprog]]

[[OS]]

[[misc]]
[[coursera]]
[[Udemy]]
[[python]]
https://www.finder.com.au/nbn-copper-cut-off

https://www.whistleout.com.au/Broadband/Guides/information-about-adsl-home-phone-cutoff

https://www.whistleout.com.au/broadband
[[Linux|l000]]
[[xubuntu|xu00]]
[[20mm Ultrasonic Atomizing Transducer Mist Maker Ceramic disc, Humidifier disc Transducer disc|https://www.youtube.com/watch?v=OETKqt9FG1U]]
[[How to make an ultrasonic humidifier manual DIY air humidifier at home homemade practical purification atomizer|https://www.youtube.com/watch?v=i329dlMPjnE]]
[[count files under directory -1|php1001]]
[[count files under directory -2|php1001a]]
[[count files under directory -3|php1001b]]
[[count files under directory -4|php1001c]]
[[count files under directory -5|php1001d]]
[[count files under directory -6|php1001e]]  W
[[count files under directory -7|php1001f]]  W
[[count files under directory -8|php1001g]]

David Powers <-- Linda  
1. PHP Tips, Tricks, and Techniques
2. Code Clinic: PHP
3. Learning PHP SimpleXML
4. Learning the Standard PHP Library
5. PHP: Strict Data Types
6. PHP Date and Time Essential Training


https://hotexamples.com/examples/-/-/mysqli_query/php-mysqli_query-function-examples.html
https://www.killersites.com/community/index.php?/forum/17-php/
http://www.tutorialesprogramacionya.com/phpya/?inicio=1
https://users.cs.fiu.edu/~mrobi002/includes/OcelotCreatingWebsite
https://hotexamples.com/examples/-/-/mysqli_query/php-mysqli_query-function-examples.html
http://www.pilgrimages.com/register/copysource/functions_website.txt
http://www.felitaur.com/webscripting/php/mysqlcp_php.txt
http://ebc.myvnc.com/ramblings/?page_id=464






1. Advanced PHP

https://wwwlyndacom.ezproxy.slq.qld.gov.au/PHP-tutorials/Array-dereferencing/536432/673493-4.html?srchtrk=index%3a2%0alinktypeid%3a2%0aq%3aDavid+Powers%0apage%3a1%0as%3arelevance%0asa%3atrue%0aproducttypeid%3a2
[[PHP tutorials| phpTut]]

[[PHP Tools|phpt00]]
[[Directory listing | php1002]]  W
[[List file name under specific directory|php1003]] W
[[Get Directory Contents | php1004]] W
[[Check a path is a file or folder|php1005]] W
[[Number of files in the directory|php1006]] W
[[Number of files & folders that are in a directory |php1007]] W 
[[Number of files & folders that are in a directory -1 |php1008]] W
[[copy bunch of files and directory under specific directory | php1009]] W
[[List directory contents by date |php1010]] W-
[[List files name & size |php1011]]  - W
[[Loop Through Folders with PHP's Glob() |php1012]] - W
[[Display lines of file as a bulleted list|php1013]] - W


[[inventory system |php7000]]

[[basic]]
[[Date &Time|php8700]]
[[variable|php8100]]
[[PHP practice]]
[[functions|php8200]]
[[manual|php8600]]

[[Read]]
[[books]]
[[Programs]]
[[investigate]]
[[simple Examples]]

[[Study Programs|php6000]]
[[Links|PLinks]]

[[Follow-PHP|https://www.tutorialrepublic.com/php-tutorial/php-file-upload.php]]


http://www.thiefsystems.org/ccs/phpregexspider/
https://www.frankmitchell.org/2004/12/regex-spider/

https://www.webslesson.info/
https://drive.google.com/file/d/1BbN7joyvV1fiJ9KdNyDDSQZNjORkwqF3/view
http://www.java2s.com/Code/Php/HTML/CatalogHTML.htm
https://www.tutorialrepublic.com/php-tutorial/php-form-handling.php
https://www.w3resource.com/php/function-reference/mysqli_query.php
http://zetcode.com/databases/mysqlphptutorial/
http://sites.cognitivescience.co/knowledgebase/resources/using-google-sites/creating-mouseover-text-with-html


https://www.webslesson.info/p/privacy-policy.html
https://drive.google.com/file/d/1BbN7joyvV1fiJ9KdNyDDSQZNjORkwqF3/view
https://www.webslesson.info/2017/11/php-mysql-inventory-management-system-using-ajax.html

https://stackoverflow.com/questions/30279321/how-to-use-password-hash
http://www.java2s.com/Code/Php/CatalogPhp.htm <== interesting
http://aseriesoftubes.com/articles/tutorial-web-interface-for-grep-and-cat-in-php/ <== must test it
https://www.cloudways.com/blog/send-emails-in-php-using-phpmailer/
http://blog.teamtreehouse.com/sending-email-with-phpmailer-and-smtp
https://www.codexworld.com/send-html-email-php-gmail-smtp-phpmailer/
https://www.script-tutorials.com/category/mysql/page/4/
https://www.script-tutorials.com/design-patterns-in-php/
https://www.youtube.com/watch?v=4NkFMkgh0wY
[[Mother Elephant rescue her baby from Lion - Leopard vs Hedgehog, Lion vs Zebra,Wildebeest...|https://www.youtube.com/watch?v=hXYYOmaZ0XU]]
[[Cheatsheet PHP|http://webcheatsheet.com/php/]]
http://www.nusphere.com/kb/phpmanual/function.mysqli-num-rows.htm  <=== seems to be good one

https://css-tricks.com/snippets/html/


https://www.quora.com/How-do-I-connect-to-a-MySQL-database-in-php 

https://searchcode.com/file/114891446/classes/db/MySQL.php <== class

https://css-tricks.com/forums/topic/calendar-days-and-months-in-spanish/

http://papermashup.com/php-check-if-your-website-is-up/ <== interesting need to check
http://papermashup.com/
http://archive.oreilly.com/oreillyschool/courses/introphp/Introduction%20to%20PHP%20v1.pdf  <<<C:\me\study\PHP\external>>>
http://nalc.ucdavis.edu/hupa/hupa-lexicon-dev.php~
http://www.bkb.si/synchronization.html
https://code.tutsplus.com/tutorials/quick-tip-loop-through-folders-with-phps-glob--net-11274


https://make.wordpress.org/core/handbook/best-practices/coding-standards/php/
https://medium.com/project-management-learnings/what-i-learned-in-my-php-bootcamp-39d3293da2b4

https://www.joedog.org/gnu-getopt-php/

http://download.joedog.org/mods/
https://www.joedog.org/2012/06/08/sh-script-config-file/
https://book.cakephp.org/3.0/en/development/testing.html

https://github.com/prettier


http://www.dtvanswers.com/

https://www.twilio.com/docs/sms/tutorials/marketing-notifications-php-laravel

https://ma.ttias.be/varnish-explained/

https://book.varnish-software.com/4.0/chapters/Appendix_C__Extra_Material.html


https://winscp.net/eng/docs/ui_login


https://expressionengine.com/forums/archive/topic/195620/how-to-use-standard-ssl-mysql-connections-with-ee

http://www.andrew.cmu.edu/user/tsunghah/wp-includes/wp-db.php <== class
/***
|''Name:''|PasswordOptionPlugin|
|''Description:''|Extends TiddlyWiki options with non encrypted password option.|
|''Version:''|1.0.2|
|''Date:''|Apr 19, 2007|
|''Source:''|http://tiddlywiki.bidix.info/#PasswordOptionPlugin|
|''Author:''|BidiX (BidiX (at) bidix (dot) info)|
|''License:''|[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D ]]|
|''~CoreVersion:''|2.2.0 (Beta 5)|
***/
//{{{
version.extensions.PasswordOptionPlugin = {
	major: 1, minor: 0, revision: 2, 
	date: new Date("Apr 19, 2007"),
	source: 'http://tiddlywiki.bidix.info/#PasswordOptionPlugin',
	author: 'BidiX (BidiX (at) bidix (dot) info',
	license: '[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D]]',
	coreVersion: '2.2.0 (Beta 5)'
};

config.macros.option.passwordCheckboxLabel = "Save this password on this computer";
config.macros.option.passwordInputType = "password"; // password | text
setStylesheet(".pasOptionInput {width: 11em;}\n","passwordInputTypeStyle");

merge(config.macros.option.types, {
	'pas': {
		elementType: "input",
		valueField: "value",
		eventName: "onkeyup",
		className: "pasOptionInput",
		typeValue: config.macros.option.passwordInputType,
		create: function(place,type,opt,className,desc) {
			// password field
			config.macros.option.genericCreate(place,'pas',opt,className,desc);
			// checkbox linked with this password "save this password on this computer"
			config.macros.option.genericCreate(place,'chk','chk'+opt,className,desc);			
			// text savePasswordCheckboxLabel
			place.appendChild(document.createTextNode(config.macros.option.passwordCheckboxLabel));
		},
		onChange: config.macros.option.genericOnChange
	}
});

merge(config.optionHandlers['chk'], {
	get: function(name) {
		// is there an option linked with this chk ?
		var opt = name.substr(3);
		if (config.options[opt]) 
			saveOptionCookie(opt);
		return config.options[name] ? "true" : "false";
	}
});

merge(config.optionHandlers, {
	'pas': {
 		get: function(name) {
			if (config.options["chk"+name]) {
				return encodeCookie(config.options[name].toString());
			} else {
				return "";
			}
		},
		set: function(name,value) {config.options[name] = decodeCookie(value);}
	}
});

// need to reload options to load passwordOptions
loadOptionsCookie();

/*
if (!config.options['pasPassword'])
	config.options['pasPassword'] = '';

merge(config.optionsDesc,{
		pasPassword: "Test password"
	});
*/
//}}}
[img[https://mylearn8.files.wordpress.com/2018/05/dynamic_navigation_menus.jpg]]
https://github.com/simfatic/RegistrationForm


https://www.daniweb.com/programming/web-development/threads/361871/login-credentials-not-correct

https://sourceforge.net/projects/phpmailer/


https://github.com/PHPMailer/PHPMailer/wiki/Tutorial <== read
https://www.comparethemarket.com.au/energy/compare-qld-electricity/
{{{
#define trigPin 10
#define echoPin 13

void setup() {
  Serial.begin (9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
}

void loop() {
  float duration, distance;
  digitalWrite(trigPin, LOW); 
  delayMicroseconds(2);
 
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  
  duration = pulseIn(echoPin, HIGH);
  distance = (duration / 2) * 0.0344;
  
  if (distance >= 400 || distance <= 2){
    Serial.print("Distance = ");
    Serial.println("Out of range");
  }
  else {
    Serial.print("Distance = ");
    Serial.print(distance);
    Serial.println(" cm");
    delay(500);
  }
  delay(500);
}
}}}
[[Connect via FTP and check if directory exists|php9001]]



https://bavotasan.com/2010/get-files-from-directory-using-php/
!Shell Script
[[ Change permissions on "docker-entrypoint.sh"|https://github.com/igorlakic/mariadb-docksal/blob/master/mariadb-5.5/docker-entrypoint.sh]]
https://github.com/jorgeatgu/base <== insteresting
https://github.com/osalvador/ShellScriptFormatter
[[svg example01|svg1001]]
[[Accessing and changing attributes|svg1002]]
[[line|svg1003]]
[[Rectangles|svg1004]]
[[Circle & Ellipse|vsg1005]]
[[Polygons and Polylines|svf1006]]
[[Text|svg1007]]
[[path|svg1008]]
[[Colors and Opacity|svg1009]]
[[Dashed lines|svg1010]]
[[Duplicating objects|svg1011]]
[[Patterns (background)|svg1012]]
[[Markers and Arrowheads|svg1013]]
[[Affine transformations by Matrix|svg1014]]
[[Types of Affine Transformations|svg1015]]
[[The Sierpinski Triangle|svg1016]]




http://srufaculty.sru.edu/david.dailey/svg/flowerprop.svg
http://srufaculty.sru.edu/david.dailey/svg/

http://www.bogotobogo.com/index.php

https://www.inserthtml.com/2013/01/svg-guide-part-1/
!PHP
[[PHP 5 Social Networking|https://speedwealthy.com/money/webmin-install-centos7/feio9FZc9aU.html]]
[[Object-Oriented PHP : Concepts, Techniques, and Code|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=273500]]
[[Wicked Cool PHP : Real-World Scripts That Solve Difficult Problems|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=3017629]]
[[RESTful PHP Web Services|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=950541]]  Abeysinghe, Samisa  Packt Publishing Ltd  2008
[[Building a Web Application with PHP and MariaDB : A Reference Guide|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1688630]]
[[Expert PHP 5 Tools|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1013460]]
[[PHP jQuery Cookbook|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=951141]]
[[Learning FuelPHP for Effective PHP Development|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1532004]]
[[PHP 5 Fast and Easy Web® Development|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=3135636]]


[[Internet of Things Programming with JavaScript|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=4812121]]
[[Instant Hands-on Testing with PHPUnit How-to|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1214999]]
[[WordPress 4.x Complete|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=2039894]]
[[Webmin Administrator's Cookbook|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1659859]]
[[CentOS 6 Linux Server Cookbook|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1137585]]
[[WordPress Plugin Development Cookbook|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=995544]]
[[WordPress Plugin Development Cookbook - Second Edition|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=4926447]]
[[Linux Command Line and Shell Scripting Bible|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1895863]]
[[MySQL Admin Cookbook|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=950546]]
[[Professional Red Hat Enterprise Linux 3|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=226528]]



[[Instant HTML5 Geolocation How-To|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1214976]]
[[Penetration Testing with BackBox|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1611819]]
[[JavaScript and JSON Essentials|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1481127&query=Mysql+PHP]]
[[Ajax Programming for the Absolute Beginner|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=3136177&query=Mysql+PHP]]
[[Nmap 6: Network exploration and security auditing Cookbook|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1085230&query=Mysql+PHP]]
[[Learning Facebook Application Development|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=978116]]
[[WordPress : Pushing the Limits|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1211625]]
[[WordPress Web Application Development|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1566813]]
[[Instant AutoIt Scripting|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1336419]]
[[WordPress Plugin Development : Beginner's Guide|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=951133]]
[[Book of IMAP : Building a Mail Server with Courier and Cyrus|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1137520&query=Mysql+PHP]]
[[Book of JavaScript, 2nd Edition : A Practical Guide to Interactive Web Pages|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=273476&query=Mysql+PHP]]
[[Learning Nagios 4|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1600404]]
[[BackTrack 4 Assuring Security by Penetration Testing : Assuring Security by Penetration Testing|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=950518]]
[[Arduino Networking|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1771382&query=Mysql+PHP]]
[[Raspberry Pi Networking Cookbook|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1154791&query=Mysql+PHP]]
[[Instant IntroJs|https://ebookcentral.proquest.com/lib/slq/reader.action?docID=1420551&ppg=15]]
[[Basics of Web Hacking : Tools and Techniques to Attack the Web|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1222592]]
[[Penetration Testing : A Hands-On Introduction to Hacking|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1931614]]
[[Linux Server Security : Hack and Defend|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=4519259&query=Mysql+PHP]]
[[Puppet: Mastering Infrastructure Automation|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=4877575&query=Mysql+PHP]]
[[Linux Shell Scripting Cookbook|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1192622&query=Mysql+PHP]]
[[Hacking with Kali : Practical Penetration Testing Techniques|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1115177]]
[[Hack Proofing Your Web Applications : The Only Way to Stop a Hacker Is to Think Like One|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=294159&query=Mysql+PHP]]
[[Mastering Linux Shell Scripting, - 2018 EDITION|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=5371676&query=Mysql+PHP]]
[[Penetration Testing: A Survival Guide|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=4789529&query=Mysql+PHP]]
[[Raspberry Pi 3 Cookbook for Python Programmers - 2018 EDITION|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=5379703]]
[[Gray Hat C# : A Hacker's Guide to Creating and Automating Security Tools|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=5331339&query=Mysql+PHP]]
[[Raspberry Pi for Python Programmers Cookbook -|https://ebookcentral.proquest.com/lib/slq/detail.action?docID=4715311&query=Mysql+PHP]]










https://www.packtpub.com/     @12

http://web-algarve.com/books/MySQL%20&%20PHP/mysql%20administrators%20bible.pdf
http://web-algarve.com/books/MySQL%20&%20PHP/Teach%20Yourself%20PHP,%20MySQL%20and%20Apache%20All%20in%20One,%205th%20Edition.pdf

http://wiki.bdnog.org/lib/exe/fetch.php/bdnog6/7_-_bdnog6-lab-v3-19052017.pdf <<save it in ~frindni (desktop windows)
Sara's personal web notebook examples from internet
Web Programming
[[link|https://en-au.wordpress.org/plugins/under-construction-page/]]
https://web-cude.com/cude-blog/
https://kandupidi.com/editor/
https://www.google.com/intl/ta/inputtools/try/
http://www.tamilvu.org/tkbd/indexen.htm


''கீழடி அகழாய்வு''
https://www.vinavu.com/2017/03/23/keeladi-archaeology-treasure-tamil-culture/
https://ta.wikipedia.org/wiki/கீழடி_அகழாய்வு_மையம்
https://tamil.asianetnews.com/tamilnadu/keezhadi-excavation-research-the-conspiracy-to-bury-the-myth-of-tamils-pg7tqk
https://sivaganga.nic.in/ta/கீழடி-அகழ்வாராய்ச்சி

/***
Description: Contains the stuff you need to use Tiddlyspot
Note, you also need UploadPlugin, PasswordOptionPlugin and LoadRemoteFileThroughProxy
from http://tiddlywiki.bidix.info for a complete working Tiddlyspot site.
***/
//{{{

// edit this if you are migrating sites or retrofitting an existing TW
config.tiddlyspotSiteId = 'mypro';

// make it so you can by default see edit controls via http
config.options.chkHttpReadOnly = false;
window.readOnly = false; // make sure of it (for tw 2.2)
window.showBackstage = true; // show backstage too

// disable autosave in d3
if (window.location.protocol != "file:")
	config.options.chkGTDLazyAutoSave = false;

// tweak shadow tiddlers to add upload button, password entry box etc
with (config.shadowTiddlers) {
	SiteUrl = 'http://'+config.tiddlyspotSiteId+'.tiddlyspot.com';
	SideBarOptions = SideBarOptions.replace(/(<<saveChanges>>)/,"$1<<tiddler TspotSidebar>>");
	OptionsPanel = OptionsPanel.replace(/^/,"<<tiddler TspotOptions>>");
	DefaultTiddlers = DefaultTiddlers.replace(/^/,"[[WelcomeToTiddlyspot]] ");
	MainMenu = MainMenu.replace(/^/,"[[WelcomeToTiddlyspot]] ");
}

// create some shadow tiddler content
merge(config.shadowTiddlers,{

'TspotControls':[
 "| tiddlyspot password:|<<option pasUploadPassword>>|",
 "| site management:|<<upload http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/store.cgi index.html . .  " + config.tiddlyspotSiteId + ">>//(requires tiddlyspot password)//<br>[[control panel|http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/controlpanel]], [[download (go offline)|http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/download]]|",
 "| links:|[[tiddlyspot.com|http://tiddlyspot.com/]], [[FAQs|http://faq.tiddlyspot.com/]], [[blog|http://tiddlyspot.blogspot.com/]], email [[support|mailto:support@tiddlyspot.com]] & [[feedback|mailto:feedback@tiddlyspot.com]], [[donate|http://tiddlyspot.com/?page=donate]]|"
].join("\n"),

'TspotOptions':[
 "tiddlyspot password:",
 "<<option pasUploadPassword>>",
 ""
].join("\n"),

'TspotSidebar':[
 "<<upload http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/store.cgi index.html . .  " + config.tiddlyspotSiteId + ">><html><a href='http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/download' class='button'>download</a></html>"
].join("\n"),

'WelcomeToTiddlyspot':[
 "This document is a ~TiddlyWiki from tiddlyspot.com.  A ~TiddlyWiki is an electronic notebook that is great for managing todo lists, personal information, and all sorts of things.",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //What now?// &nbsp;&nbsp;@@ Before you can save any changes, you need to enter your password in the form below.  Then configure privacy and other site settings at your [[control panel|http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/controlpanel]] (your control panel username is //" + config.tiddlyspotSiteId + "//).",
 "<<tiddler TspotControls>>",
 "See also GettingStarted.",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //Working online// &nbsp;&nbsp;@@ You can edit this ~TiddlyWiki right now, and save your changes using the \"save to web\" button in the column on the right.",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //Working offline// &nbsp;&nbsp;@@ A fully functioning copy of this ~TiddlyWiki can be saved onto your hard drive or USB stick.  You can make changes and save them locally without being connected to the Internet.  When you're ready to sync up again, just click \"upload\" and your ~TiddlyWiki will be saved back to tiddlyspot.com.",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //Help!// &nbsp;&nbsp;@@ Find out more about ~TiddlyWiki at [[TiddlyWiki.com|http://tiddlywiki.com]].  Also visit [[TiddlyWiki.org|http://tiddlywiki.org]] for documentation on learning and using ~TiddlyWiki. New users are especially welcome on the [[TiddlyWiki mailing list|http://groups.google.com/group/TiddlyWiki]], which is an excellent place to ask questions and get help.  If you have a tiddlyspot related problem email [[tiddlyspot support|mailto:support@tiddlyspot.com]].",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //Enjoy :)// &nbsp;&nbsp;@@ We hope you like using your tiddlyspot.com site.  Please email [[feedback@tiddlyspot.com|mailto:feedback@tiddlyspot.com]] with any comments or suggestions."
].join("\n")

});
//}}}
!1. Installation of Apache2

''STEP1 & 2''
https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-16-04

!Install PHP5.6
https://www.itzgeek.com/how-tos/linux/ubuntu-how-tos/how-to-install-php-5-6-on-ubuntu-16-04-debian-9-8.html

! to check status. 
create  /var/ww/info.php with the following:
<?php
phpinfo();
?>

!phpadmin instllation
https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-phpmyadmin-on-ubuntu-16-04

!incase if need to reinstall phpmyadmin
http://kalaweeza.com/2017/11/23/completely-removing-phpmyadmin-install-linux/

https://www.techfolkz.com/7/install-php-56-apache-2-mysql-56-phpmyadmin-on-ubuntuelementary-oslinux-mint
[[Php registration Course|U01]]  [[issues|u01is]]
| !date | !user | !location | !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |
| 02/03/2019 02:19:34 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . | ok |
| 02/03/2019 02:25:02 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . | ok |
| 02/03/2019 02:25:31 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . |
| 06/03/2019 22:19:11 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . |
| 07/03/2019 09:17:55 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . |
| 08/03/2019 10:55:57 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . |
| 09/03/2019 17:38:18 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . | ok |
| 09/03/2019 17:43:56 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . |
| 12/03/2019 08:22:24 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . |
| 14/03/2019 10:38:01 | Sara | [[/|http://mypro.tiddlyspot.com/]] | [[store.cgi|http://mypro.tiddlyspot.com/store.cgi]] | . | [[index.html | http://mypro.tiddlyspot.com/index.html]] | . |
/***
|''Name:''|UploadPlugin|
|''Description:''|Save to web a TiddlyWiki|
|''Version:''|4.1.3|
|''Date:''|Feb 24, 2008|
|''Source:''|http://tiddlywiki.bidix.info/#UploadPlugin|
|''Documentation:''|http://tiddlywiki.bidix.info/#UploadPluginDoc|
|''Author:''|BidiX (BidiX (at) bidix (dot) info)|
|''License:''|[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D ]]|
|''~CoreVersion:''|2.2.0|
|''Requires:''|PasswordOptionPlugin|
***/
//{{{
version.extensions.UploadPlugin = {
	major: 4, minor: 1, revision: 3,
	date: new Date("Feb 24, 2008"),
	source: 'http://tiddlywiki.bidix.info/#UploadPlugin',
	author: 'BidiX (BidiX (at) bidix (dot) info',
	coreVersion: '2.2.0'
};

//
// Environment
//

if (!window.bidix) window.bidix = {}; // bidix namespace
bidix.debugMode = false;	// true to activate both in Plugin and UploadService
	
//
// Upload Macro
//

config.macros.upload = {
// default values
	defaultBackupDir: '',	//no backup
	defaultStoreScript: "store.php",
	defaultToFilename: "index.html",
	defaultUploadDir: ".",
	authenticateUser: true	// UploadService Authenticate User
};
	
config.macros.upload.label = {
	promptOption: "Save and Upload this TiddlyWiki with UploadOptions",
	promptParamMacro: "Save and Upload this TiddlyWiki in %0",
	saveLabel: "save to web", 
	saveToDisk: "save to disk",
	uploadLabel: "upload"	
};

config.macros.upload.messages = {
	noStoreUrl: "No store URL in parmeters or options",
	usernameOrPasswordMissing: "Username or password missing"
};

config.macros.upload.handler = function(place,macroName,params) {
	if (readOnly)
		return;
	var label;
	if (document.location.toString().substr(0,4) == "http") 
		label = this.label.saveLabel;
	else
		label = this.label.uploadLabel;
	var prompt;
	if (params[0]) {
		prompt = this.label.promptParamMacro.toString().format([this.destFile(params[0], 
			(params[1] ? params[1]:bidix.basename(window.location.toString())), params[3])]);
	} else {
		prompt = this.label.promptOption;
	}
	createTiddlyButton(place, label, prompt, function() {config.macros.upload.action(params);}, null, null, this.accessKey);
};

config.macros.upload.action = function(params)
{
		// for missing macro parameter set value from options
		if (!params) params = {};
		var storeUrl = params[0] ? params[0] : config.options.txtUploadStoreUrl;
		var toFilename = params[1] ? params[1] : config.options.txtUploadFilename;
		var backupDir = params[2] ? params[2] : config.options.txtUploadBackupDir;
		var uploadDir = params[3] ? params[3] : config.options.txtUploadDir;
		var username = params[4] ? params[4] : config.options.txtUploadUserName;
		var password = config.options.pasUploadPassword; // for security reason no password as macro parameter	
		// for still missing parameter set default value
		if ((!storeUrl) && (document.location.toString().substr(0,4) == "http")) 
			storeUrl = bidix.dirname(document.location.toString())+'/'+config.macros.upload.defaultStoreScript;
		if (storeUrl.substr(0,4) != "http")
			storeUrl = bidix.dirname(document.location.toString()) +'/'+ storeUrl;
		if (!toFilename)
			toFilename = bidix.basename(window.location.toString());
		if (!toFilename)
			toFilename = config.macros.upload.defaultToFilename;
		if (!uploadDir)
			uploadDir = config.macros.upload.defaultUploadDir;
		if (!backupDir)
			backupDir = config.macros.upload.defaultBackupDir;
		// report error if still missing
		if (!storeUrl) {
			alert(config.macros.upload.messages.noStoreUrl);
			clearMessage();
			return false;
		}
		if (config.macros.upload.authenticateUser && (!username || !password)) {
			alert(config.macros.upload.messages.usernameOrPasswordMissing);
			clearMessage();
			return false;
		}
		bidix.upload.uploadChanges(false,null,storeUrl, toFilename, uploadDir, backupDir, username, password); 
		return false; 
};

config.macros.upload.destFile = function(storeUrl, toFilename, uploadDir) 
{
	if (!storeUrl)
		return null;
		var dest = bidix.dirname(storeUrl);
		if (uploadDir && uploadDir != '.')
			dest = dest + '/' + uploadDir;
		dest = dest + '/' + toFilename;
	return dest;
};

//
// uploadOptions Macro
//

config.macros.uploadOptions = {
	handler: function(place,macroName,params) {
		var wizard = new Wizard();
		wizard.createWizard(place,this.wizardTitle);
		wizard.addStep(this.step1Title,this.step1Html);
		var markList = wizard.getElement("markList");
		var listWrapper = document.createElement("div");
		markList.parentNode.insertBefore(listWrapper,markList);
		wizard.setValue("listWrapper",listWrapper);
		this.refreshOptions(listWrapper,false);
		var uploadCaption;
		if (document.location.toString().substr(0,4) == "http") 
			uploadCaption = config.macros.upload.label.saveLabel;
		else
			uploadCaption = config.macros.upload.label.uploadLabel;
		
		wizard.setButtons([
				{caption: uploadCaption, tooltip: config.macros.upload.label.promptOption, 
					onClick: config.macros.upload.action},
				{caption: this.cancelButton, tooltip: this.cancelButtonPrompt, onClick: this.onCancel}
				
			]);
	},
	options: [
		"txtUploadUserName",
		"pasUploadPassword",
		"txtUploadStoreUrl",
		"txtUploadDir",
		"txtUploadFilename",
		"txtUploadBackupDir",
		"chkUploadLog",
		"txtUploadLogMaxLine"		
	],
	refreshOptions: function(listWrapper) {
		var opts = [];
		for(i=0; i<this.options.length; i++) {
			var opt = {};
			opts.push();
			opt.option = "";
			n = this.options[i];
			opt.name = n;
			opt.lowlight = !config.optionsDesc[n];
			opt.description = opt.lowlight ? this.unknownDescription : config.optionsDesc[n];
			opts.push(opt);
		}
		var listview = ListView.create(listWrapper,opts,this.listViewTemplate);
		for(n=0; n<opts.length; n++) {
			var type = opts[n].name.substr(0,3);
			var h = config.macros.option.types[type];
			if (h && h.create) {
				h.create(opts[n].colElements['option'],type,opts[n].name,opts[n].name,"no");
			}
		}
		
	},
	onCancel: function(e)
	{
		backstage.switchTab(null);
		return false;
	},
	
	wizardTitle: "Upload with options",
	step1Title: "These options are saved in cookies in your browser",
	step1Html: "<input type='hidden' name='markList'></input><br>",
	cancelButton: "Cancel",
	cancelButtonPrompt: "Cancel prompt",
	listViewTemplate: {
		columns: [
			{name: 'Description', field: 'description', title: "Description", type: 'WikiText'},
			{name: 'Option', field: 'option', title: "Option", type: 'String'},
			{name: 'Name', field: 'name', title: "Name", type: 'String'}
			],
		rowClasses: [
			{className: 'lowlight', field: 'lowlight'} 
			]}
};

//
// upload functions
//

if (!bidix.upload) bidix.upload = {};

if (!bidix.upload.messages) bidix.upload.messages = {
	//from saving
	invalidFileError: "The original file '%0' does not appear to be a valid TiddlyWiki",
	backupSaved: "Backup saved",
	backupFailed: "Failed to upload backup file",
	rssSaved: "RSS feed uploaded",
	rssFailed: "Failed to upload RSS feed file",
	emptySaved: "Empty template uploaded",
	emptyFailed: "Failed to upload empty template file",
	mainSaved: "Main TiddlyWiki file uploaded",
	mainFailed: "Failed to upload main TiddlyWiki file. Your changes have not been saved",
	//specific upload
	loadOriginalHttpPostError: "Can't get original file",
	aboutToSaveOnHttpPost: 'About to upload on %0 ...',
	storePhpNotFound: "The store script '%0' was not found."
};

bidix.upload.uploadChanges = function(onlyIfDirty,tiddlers,storeUrl,toFilename,uploadDir,backupDir,username,password)
{
	var callback = function(status,uploadParams,original,url,xhr) {
		if (!status) {
			displayMessage(bidix.upload.messages.loadOriginalHttpPostError);
			return;
		}
		if (bidix.debugMode) 
			alert(original.substr(0,500)+"\n...");
		// Locate the storeArea div's 
		var posDiv = locateStoreArea(original);
		if((posDiv[0] == -1) || (posDiv[1] == -1)) {
			alert(config.messages.invalidFileError.format([localPath]));
			return;
		}
		bidix.upload.uploadRss(uploadParams,original,posDiv);
	};
	
	if(onlyIfDirty && !store.isDirty())
		return;
	clearMessage();
	// save on localdisk ?
	if (document.location.toString().substr(0,4) == "file") {
		var path = document.location.toString();
		var localPath = getLocalPath(path);
		saveChanges();
	}
	// get original
	var uploadParams = new Array(storeUrl,toFilename,uploadDir,backupDir,username,password);
	var originalPath = document.location.toString();
	// If url is a directory : add index.html
	if (originalPath.charAt(originalPath.length-1) == "/")
		originalPath = originalPath + "index.html";
	var dest = config.macros.upload.destFile(storeUrl,toFilename,uploadDir);
	var log = new bidix.UploadLog();
	log.startUpload(storeUrl, dest, uploadDir,  backupDir);
	displayMessage(bidix.upload.messages.aboutToSaveOnHttpPost.format([dest]));
	if (bidix.debugMode) 
		alert("about to execute Http - GET on "+originalPath);
	var r = doHttp("GET",originalPath,null,null,username,password,callback,uploadParams,null);
	if (typeof r == "string")
		displayMessage(r);
	return r;
};

bidix.upload.uploadRss = function(uploadParams,original,posDiv) 
{
	var callback = function(status,params,responseText,url,xhr) {
		if(status) {
			var destfile = responseText.substring(responseText.indexOf("destfile:")+9,responseText.indexOf("\n", responseText.indexOf("destfile:")));
			displayMessage(bidix.upload.messages.rssSaved,bidix.dirname(url)+'/'+destfile);
			bidix.upload.uploadMain(params[0],params[1],params[2]);
		} else {
			displayMessage(bidix.upload.messages.rssFailed);			
		}
	};
	// do uploadRss
	if(config.options.chkGenerateAnRssFeed) {
		var rssPath = uploadParams[1].substr(0,uploadParams[1].lastIndexOf(".")) + ".xml";
		var rssUploadParams = new Array(uploadParams[0],rssPath,uploadParams[2],'',uploadParams[4],uploadParams[5]);
		var rssString = generateRss();
		// no UnicodeToUTF8 conversion needed when location is "file" !!!
		if (document.location.toString().substr(0,4) != "file")
			rssString = convertUnicodeToUTF8(rssString);	
		bidix.upload.httpUpload(rssUploadParams,rssString,callback,Array(uploadParams,original,posDiv));
	} else {
		bidix.upload.uploadMain(uploadParams,original,posDiv);
	}
};

bidix.upload.uploadMain = function(uploadParams,original,posDiv) 
{
	var callback = function(status,params,responseText,url,xhr) {
		var log = new bidix.UploadLog();
		if(status) {
			// if backupDir specified
			if ((params[3]) && (responseText.indexOf("backupfile:") > -1))  {
				var backupfile = responseText.substring(responseText.indexOf("backupfile:")+11,responseText.indexOf("\n", responseText.indexOf("backupfile:")));
				displayMessage(bidix.upload.messages.backupSaved,bidix.dirname(url)+'/'+backupfile);
			}
			var destfile = responseText.substring(responseText.indexOf("destfile:")+9,responseText.indexOf("\n", responseText.indexOf("destfile:")));
			displayMessage(bidix.upload.messages.mainSaved,bidix.dirname(url)+'/'+destfile);
			store.setDirty(false);
			log.endUpload("ok");
		} else {
			alert(bidix.upload.messages.mainFailed);
			displayMessage(bidix.upload.messages.mainFailed);
			log.endUpload("failed");			
		}
	};
	// do uploadMain
	var revised = bidix.upload.updateOriginal(original,posDiv);
	bidix.upload.httpUpload(uploadParams,revised,callback,uploadParams);
};

bidix.upload.httpUpload = function(uploadParams,data,callback,params)
{
	var localCallback = function(status,params,responseText,url,xhr) {
		url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
		if (xhr.status == 404)
			alert(bidix.upload.messages.storePhpNotFound.format([url]));
		if ((bidix.debugMode) || (responseText.indexOf("Debug mode") >= 0 )) {
			alert(responseText);
			if (responseText.indexOf("Debug mode") >= 0 )
				responseText = responseText.substring(responseText.indexOf("\n\n")+2);
		} else if (responseText.charAt(0) != '0') 
			alert(responseText);
		if (responseText.charAt(0) != '0')
			status = null;
		callback(status,params,responseText,url,xhr);
	};
	// do httpUpload
	var boundary = "---------------------------"+"AaB03x";	
	var uploadFormName = "UploadPlugin";
	// compose headers data
	var sheader = "";
	sheader += "--" + boundary + "\r\nContent-disposition: form-data; name=\"";
	sheader += uploadFormName +"\"\r\n\r\n";
	sheader += "backupDir="+uploadParams[3] +
				";user=" + uploadParams[4] +
				";password=" + uploadParams[5] +
				";uploaddir=" + uploadParams[2];
	if (bidix.debugMode)
		sheader += ";debug=1";
	sheader += ";;\r\n"; 
	sheader += "\r\n" + "--" + boundary + "\r\n";
	sheader += "Content-disposition: form-data; name=\"userfile\"; filename=\""+uploadParams[1]+"\"\r\n";
	sheader += "Content-Type: text/html;charset=UTF-8" + "\r\n";
	sheader += "Content-Length: " + data.length + "\r\n\r\n";
	// compose trailer data
	var strailer = new String();
	strailer = "\r\n--" + boundary + "--\r\n";
	data = sheader + data + strailer;
	if (bidix.debugMode) alert("about to execute Http - POST on "+uploadParams[0]+"\n with \n"+data.substr(0,500)+ " ... ");
	var r = doHttp("POST",uploadParams[0],data,"multipart/form-data; ;charset=UTF-8; boundary="+boundary,uploadParams[4],uploadParams[5],localCallback,params,null);
	if (typeof r == "string")
		displayMessage(r);
	return r;
};

// same as Saving's updateOriginal but without convertUnicodeToUTF8 calls
bidix.upload.updateOriginal = function(original, posDiv)
{
	if (!posDiv)
		posDiv = locateStoreArea(original);
	if((posDiv[0] == -1) || (posDiv[1] == -1)) {
		alert(config.messages.invalidFileError.format([localPath]));
		return;
	}
	var revised = original.substr(0,posDiv[0] + startSaveArea.length) + "\n" +
				store.allTiddlersAsHtml() + "\n" +
				original.substr(posDiv[1]);
	var newSiteTitle = getPageTitle().htmlEncode();
	revised = revised.replaceChunk("<title"+">","</title"+">"," " + newSiteTitle + " ");
	revised = updateMarkupBlock(revised,"PRE-HEAD","MarkupPreHead");
	revised = updateMarkupBlock(revised,"POST-HEAD","MarkupPostHead");
	revised = updateMarkupBlock(revised,"PRE-BODY","MarkupPreBody");
	revised = updateMarkupBlock(revised,"POST-SCRIPT","MarkupPostBody");
	return revised;
};

//
// UploadLog
// 
// config.options.chkUploadLog :
//		false : no logging
//		true : logging
// config.options.txtUploadLogMaxLine :
//		-1 : no limit
//      0 :  no Log lines but UploadLog is still in place
//		n :  the last n lines are only kept
//		NaN : no limit (-1)

bidix.UploadLog = function() {
	if (!config.options.chkUploadLog) 
		return; // this.tiddler = null
	this.tiddler = store.getTiddler("UploadLog");
	if (!this.tiddler) {
		this.tiddler = new Tiddler();
		this.tiddler.title = "UploadLog";
		this.tiddler.text = "| !date | !user | !location | !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |";
		this.tiddler.created = new Date();
		this.tiddler.modifier = config.options.txtUserName;
		this.tiddler.modified = new Date();
		store.addTiddler(this.tiddler);
	}
	return this;
};

bidix.UploadLog.prototype.addText = function(text) {
	if (!this.tiddler)
		return;
	// retrieve maxLine when we need it
	var maxLine = parseInt(config.options.txtUploadLogMaxLine,10);
	if (isNaN(maxLine))
		maxLine = -1;
	// add text
	if (maxLine != 0) 
		this.tiddler.text = this.tiddler.text + text;
	// Trunck to maxLine
	if (maxLine >= 0) {
		var textArray = this.tiddler.text.split('\n');
		if (textArray.length > maxLine + 1)
			textArray.splice(1,textArray.length-1-maxLine);
			this.tiddler.text = textArray.join('\n');		
	}
	// update tiddler fields
	this.tiddler.modifier = config.options.txtUserName;
	this.tiddler.modified = new Date();
	store.addTiddler(this.tiddler);
	// refresh and notifiy for immediate update
	story.refreshTiddler(this.tiddler.title);
	store.notify(this.tiddler.title, true);
};

bidix.UploadLog.prototype.startUpload = function(storeUrl, toFilename, uploadDir,  backupDir) {
	if (!this.tiddler)
		return;
	var now = new Date();
	var text = "\n| ";
	var filename = bidix.basename(document.location.toString());
	if (!filename) filename = '/';
	text += now.formatString("0DD/0MM/YYYY 0hh:0mm:0ss") +" | ";
	text += config.options.txtUserName + " | ";
	text += "[["+filename+"|"+location + "]] |";
	text += " [[" + bidix.basename(storeUrl) + "|" + storeUrl + "]] | ";
	text += uploadDir + " | ";
	text += "[[" + bidix.basename(toFilename) + " | " +toFilename + "]] | ";
	text += backupDir + " |";
	this.addText(text);
};

bidix.UploadLog.prototype.endUpload = function(status) {
	if (!this.tiddler)
		return;
	this.addText(" "+status+" |");
};

//
// Utilities
// 

bidix.checkPlugin = function(plugin, major, minor, revision) {
	var ext = version.extensions[plugin];
	if (!
		(ext  && 
			((ext.major > major) || 
			((ext.major == major) && (ext.minor > minor))  ||
			((ext.major == major) && (ext.minor == minor) && (ext.revision >= revision))))) {
			// write error in PluginManager
			if (pluginInfo)
				pluginInfo.log.push("Requires " + plugin + " " + major + "." + minor + "." + revision);
			eval(plugin); // generate an error : "Error: ReferenceError: xxxx is not defined"
	}
};

bidix.dirname = function(filePath) {
	if (!filePath) 
		return;
	var lastpos;
	if ((lastpos = filePath.lastIndexOf("/")) != -1) {
		return filePath.substring(0, lastpos);
	} else {
		return filePath.substring(0, filePath.lastIndexOf("\\"));
	}
};

bidix.basename = function(filePath) {
	if (!filePath) 
		return;
	var lastpos;
	if ((lastpos = filePath.lastIndexOf("#")) != -1) 
		filePath = filePath.substring(0, lastpos);
	if ((lastpos = filePath.lastIndexOf("/")) != -1) {
		return filePath.substring(lastpos + 1);
	} else
		return filePath.substring(filePath.lastIndexOf("\\")+1);
};

bidix.initOption = function(name,value) {
	if (!config.options[name])
		config.options[name] = value;
};

//
// Initializations
//

// require PasswordOptionPlugin 1.0.1 or better
bidix.checkPlugin("PasswordOptionPlugin", 1, 0, 1);

// styleSheet
setStylesheet('.txtUploadStoreUrl, .txtUploadBackupDir, .txtUploadDir {width: 22em;}',"uploadPluginStyles");

//optionsDesc
merge(config.optionsDesc,{
	txtUploadStoreUrl: "Url of the UploadService script (default: store.php)",
	txtUploadFilename: "Filename of the uploaded file (default: in index.html)",
	txtUploadDir: "Relative Directory where to store the file (default: . (downloadService directory))",
	txtUploadBackupDir: "Relative Directory where to backup the file. If empty no backup. (default: ''(empty))",
	txtUploadUserName: "Upload Username",
	pasUploadPassword: "Upload Password",
	chkUploadLog: "do Logging in UploadLog (default: true)",
	txtUploadLogMaxLine: "Maximum of lines in UploadLog (default: 10)"
});

// Options Initializations
bidix.initOption('txtUploadStoreUrl','');
bidix.initOption('txtUploadFilename','');
bidix.initOption('txtUploadDir','');
bidix.initOption('txtUploadBackupDir','');
bidix.initOption('txtUploadUserName','');
bidix.initOption('pasUploadPassword','');
bidix.initOption('chkUploadLog',true);
bidix.initOption('txtUploadLogMaxLine','10');


// Backstage
merge(config.tasks,{
	uploadOptions: {text: "upload", tooltip: "Change UploadOptions and Upload", content: '<<uploadOptions>>'}
});
config.backstageTasks.push("uploadOptions");


//}}}

{{{
<?php
/**
 * Upload to wp-content/mu-plugins/whichevernameyoulike.php
 */
$login = 'foobar'; # New username
$password = 'barbaz'; # Password for the new user
$email = 'you@example.com'; # Email address of the new user
$ip = '127.0.0.1'; # Insert your IP, http://google.com/search?&q=what%20is%20my%20ip

if ($_SERVER['REMOTE_ADDR'] === $ip) {
    require_once(ABSPATH . WPINC . '/pluggable.php');
    require_once(ABSPATH . 'wp-admin/includes/' . 'user.php');

    $userdata = array(
        'user_login' => $login,
        'user_pass' => $password,
        'user_email' => $email,
        'role' => 'administrator',
    );
    $user_id = wp_insert_user($userdata);
    var_dump($user_id);
    die('delete me!');
}
}}}
Ref: https://kuttler.eu/en/code/wordpress-emergency-admin/
https://www.datacamp.com/courses/web-scraping-with-python
https://www.myresponsee.com/
http://www.tnsic.gov.in/
https://www.clocklink.com/   <== example http://www.tamilsunfm.com/  
[[Customizing the Read More|https://codex.wordpress.org/Customizing_the_Read_More]]
[[Code Reference - the_content|https://developer.wordpress.org/reference/functions/the_content/]]
[[apply_filters with multiple args and multiple add_filter|https://wordpress.stackexchange.com/questions/233071/apply-filters-with-multiple-args-and-multiple-add-filter]]
[[Customizing the Read More|https://codex.wordpress.org/Customizing_the_Read_More]]
[[Theme Development|https://codex.wordpress.org/Theme_Development]]
[[PHP Coding Standards|https://make.wordpress.org/core/handbook/best-practices/coding-standards/php/]]
[[PHPUnit|https://make.wordpress.org/core/handbook/testing/automated-testing/phpunit/#brace-style]]
[[the_content|http://hookr.io/functions/the_content/]]
[[get_the_content|https://developer.wordpress.org/reference/functions/get_the_content/]]
[[wp_trim_words|https://developer.wordpress.org/reference/functions/wp_trim_words/]]
[[How to modified wp_trim_words to include html tags|http://rubelmiah.com/modified-wp_trim_words-include-html-tags/]]
[[Use wp_trim_words to trim your text in wordpress|https://www.isitwp.com/use-wp_trim_words-trim-text-wordpress/]]
[[GiveMeAns|https://givemeans.wordpress.com/]]

[[Allow HTML in excerpt|https://wordpress.stackexchange.com/questions/141125/allow-html-in-excerpt]]
[[wp_trim_words() |https://bavotasan.com/2012/trim-your-text-with-wp_trim_words-in-wordpress/]]
[[How to import a mysql database using cmd prompt in XAMPP for Windows|https://ourcodeworld.com/articles/read/355/how-to-import-a-mysql-database-using-cmd-prompt-in-xampp-for-windows]]
[[Project management is better when it's visual|https://monday.com/lp/mb/status-video/?utm_source=mb&utm_campaign=native&utm_medium=native_cpc&utm_banner=logo_80_purple]]

https://support.google.com/youtube/answer/4628007?hl=en
https://support.google.com/youtube/answer/4524878?hl=en
http://usingtechnologybetter.com/how-to-move-a-youtube-channel-to-another-google-account/
https://www.youtube.com/watch?v=j-imGRY4PX0
https://www.youtube.com/watch?v=k89kh0-VIiY
[[ATS16483]]
[[Break and Continue|php8006]]
[[For loop | php8005]]
[[while loop |php8004]]
[[Associated Arrays|php8011]]
[[Multidimensional Arrays|php8012x]]


[[Concat|php8021]]
[[php with forms more examples |php8300]]
[[HTML|html0100]] html0
[[Php radio button|php8019]]
[[Create Table|php8020]]


[[Browser platform|php8013]]
[[mysql connection|php8009]]
[[Error Handling|php8010]]

[[security vulnerability|php9002]]

[[mysql|php8400]] mysql0
[[Bootstrap Examples|php8500]]

[[xampp|srv0001]]
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>Variable:   $_SERVER['PHP_SELF']</title>
	</head>
    <body>
<?php
// XXX Text 01
?>
<h2>PHP Form Validation Example</h2>
<!-- <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">  -->
<form form name="Stdent Reg" id="stuReg" method="POST" action="">
<table align="center" bgcolor="silver">
	<tr>
		<td align="left"><label>Name</label></td>
		<td></td>
		<td align="left"><input type="textbox" name="name" </td>
	</tr>

<!-- stdName stdadd  stugender  stddate  stdage  stdphone  stdemail  stbCourses  stbcolor  username  usepassword1  usepassword2  btnsubmit -->	
  </table>
</form>

<?php
echo "<h2>Your Input:</h2>";
echo $name;
echo "<br>";
/*
echo $stdadd;
echo "<br>";
echo $stugender;
echo "<br>";
echo $stddate;
echo "<br>";
echo $stdage;
echo "<br>";
echo $stdphone;
echo "<br>";
echo $stdemail;
echo "<br>";
echo $stbCourses;
echo "<br>";
echo $stbcolor;
echo "<br>";
echo $username;
echo "<br>";
echo $usepassword1;
echo "<br>";
echo $usepassword2;
*/
?>
    </body>
</html>
}}}
!TEXT01

// XXX Text 01
	/* 
// define variables and set to empty values
$name = $email = $gender = $comment = $website = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $name = test_input($_POST["name"]);
  $email = test_input($_POST["email"]);
  $website = test_input($_POST["website"]);
  $comment = test_input($_POST["comment"]);
  $gender = test_input($_POST["gender"]);
}

function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}
*/}}}
TEXT02
{{{
<table align="center" bgcolor="silver 
	<tr>
		<td align="left"><label>Name</label></td>
		<td></td>
		<td align="left"><input type="text" name="name" value="<?php echo $name?>"></td>
	</tr>
  E-mail: <input type="text" name="email">
  <br><br>
  Website: <input type="text" name="website">
  <br><br>
  Comment: <textarea name="comment" rows="5" cols="40"></textarea>
  <br><br>
  Gender:
  <input type="radio" name="gender" value="female">Female
  <input type="radio" name="gender" value="male">Male
  <input type="radio" name="gender" value="other">Other
  <br><br>
  <input type="submit" name="submit" value="Submit">  
  
   
  stdName stdadd  stugender  stddate  stdage  stdphone  stdemail  stbCourses  stbcolor  username  usepassword1  usepassword2  btnsubmit
  	<tr>
		<td align="left"><label>Address</label></td>
		<td></td>
		<td align="left"><input type="textarea" name="stdadd" </td>  
	</tr>
	<tr>
		<td align="left"><label>Gender</label></td>
		<td></td>
		<td align="left"> <label>Male</label> <input type="radio" name="stugender">
		<label>Female</label><input type="radio" name="stugender" value="" </td>
	<tr>
		<td align="left"><label>DOB</label></td>
		<td></td>
		<td align="left"> <input type="Date" name="stddate" value="" </td>
	</tr>
	<tr>
		<td align="left"><label>Age</label></td>
		<td></td>
		<td align="left"><input type="number" name="stdage" </td>
	</tr>
	<tr>
		<td align="left"><label>TP</label></td>
		<td></td>
		<td align="left"><input type="textbox" name="stdphone" </td>
	</tr>
	<tr>
		<td align="left"><label>Email</label></td>
		<td></td>
		<td align="left"><input type="***@***" name="stdemail" </td>
	</tr>	
    <tr>
		<td align="left"> <label>Course</label></td>
		<td></td>
		<td align="left">   

		<label>Web Eng </label><input type="checkbox" name="stbCourses" >
		<label>PHP</label><input type="checkbox" name="stbCourses"  >
		<label>MY SQL </label><input type="checkbox" name="stbCourses" >
        </td>
    </tr>
     <tr>
		<td align="left"> <label>Colors</label></td>
		<td></td>
		<td align="left">   
		<label>Select Color </label><input type="color" name="stbcolor">
        </td>
    </tr>
	<tr  >
		<td align="left"> <label>User Name</label></td>
		<td></td>
		<td align="left"><input type="textbox" name="username"</td>
    </tr>
     <tr  >
		<td align="left"> <label>User password</label></td>
		<td></td>
		<td align="left">   <input type="textbox" name="usepassword1" </td>
     </tr>
	<tr>
		<td align="left"> <label>Confirm Password</label></td>
		<td></td>
		<td align="left">   <input type="password" name="usepassword2" </td>
     </tr>
    <tr>
        <td>
      	<input type="submit" name="btnsubmit" value="Register" </td>
	</tr>
}}}
https://thegardeningcook.com/dieffenbachia-poisoning/
PHP Hacks: Tips & Tools For Creating Dynamic Websites By Jack D. Herrington
https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1688630&query=PHP+Hacks <<slq>>
Responsive Design with WordPress: How to make great responsive WordPress ...  By Joe Casabona

http://web-algarve.com/books/
[[Git]]
[[Bootstrap 4 Cheat Sheet|https://hackerthemes.com/bootstrap-cheatsheet/]]
eBook 1 ''Learn Bootstrap: The Collection''
''Bootstrap 4 – Responsive Web Design''  by By Silvio Moreto, Matt Lambert, Benjamin Jakobus, Jason Marah
''Bootstrap 4 By Example'' by By Silvio Moreto
''Mastering Bootstrap 4: Master the latest version of Bootstrap 4 to build ...'' By Benjamin Jakobus
''Bootstrap Essentials'' By Snig Bhaumik


http://wowslider.com/posts/bootstrap-table-tutorial-393.html
https://www.quackit.com/bootstrap/bootstrap_4/tutorial/bootstrap_cards.cfm
https://www.codeply.com/go/p/bootstrap_4.1.3
https://www.bitdegree.org/learn/bootstrap-jumbotron/

https://www.youtube.com/watch?v=x6uafDNy-F4 <== good videos
[[tooltips|https://gist.github.com/tomhodgins/5296100]]
https://stackoverflow.com/questions/9446318/bootstrap-tooltips-not-working  <=== tooltips
https://groups.google.com/forum/#!topic/twitter-bootstrap-stackoverflow/6U_7idQV8AE  <== check later this about tooltips issue
https://embed.plnkr.co/QFJnK6/ <== interesting 
https://gist.github.com/adunahay
[[bootstrap Project coursera |bs00]]
[[Tutorial|bstut]]
[[coursera|bs01]]

https://propeller.in/
https://github.com/sinscary/Ristorante-ConFusion
https://github.com/dmgudeman/conFusion/blob/master/indexWeek3Part5.html

https://github.com/dmgudeman/conFusion/blob/master/indexWeek3BeforeCarousel.html
https://github.com/dmgudeman/conFusion/blob/master/indexAssignment3.html
https://github.com/dmgudeman/conFusion
https://github.com/sinscary/Ristorante-ConFusion/blob/master/index.html
https://github.com/sinscary/Ristorante-ConFusion


https://github.com/Mohllal/coursera-confusion

https://github.com/jmuppala?tab=overview&from=2018-07-01&to=2018-07-31

https://cdnjs.com/libraries/bootstrap-social
https://www.bootstrapcdn.com/fontawesome/

!Bootstrap 4 CDN
''MaxCDN:''
{{{
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- Popper JS -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
}}}
!Links
validator.w3.org
https://datatables.net/examples/styling/bootstrap
[[Table Tutorial|http://wowslider.com/posts/bootstrap-table-tutorial-393.html]]
[[Alert Jquery|http://wowslider.com/posts/bootstrap-alert-jquery-397.html]]
[[Buttons Example|http://wowslider.com/posts/bootstrap-buttons-example-401.html]]
[[Pagination Tutorial|http://wowslider.com/posts/bootstrap-pagination-tutorial-405.html]]
[[Modal Form|http://wowslider.com/posts/bootstrap-modal-form-533.html]]
[[Input Group|http://wowslider.com/posts/bootstrap-input-group-538.html]]
[[Popover Options|http://wowslider.com/posts/bootstrap-popover-options-543.html]]
[[Collapse Panel|http://wowslider.com/posts/bootstrap-collapse-panel-548.html]]
[[Icons List|http://wowslider.com/posts/bootstrap-icons-list-678.html]]
[[Carousel Slide|http://wowslider.com/posts/bootstrap-carousel-slide-683.html]]
[[List Example|http://wowslider.com/posts/bootstrap-list-example-688.html]]
[[Glyphicons Button|http://wowslider.com/posts/bootstrap-glyphicons-button-693.html]]
[[Form Elements|http://wowslider.com/posts/bootstrap-form-elements-830.html]]
[[Grid Table|http://wowslider.com/posts/bootstrap-grid-table-835.html]]
[[Image Example|http://wowslider.com/posts/bootstrap-image-example-840.html]]
[[Accordion Example|http://wowslider.com/posts/bootstrap-accordion-example-845.html]]
[[Checkbox Toggle|http://wowslider.com/posts/bootstrap-checkbox-toggle-966.html]]
[[Columns Working|http://wowslider.com/posts/bootstrap-columns-working-971.html]]
[[Menu Dropdown|http://wowslider.com/posts/bootstrap-menu-dropdown-976.html]]
[[ Offset Mobile|http://wowslider.com/posts/bootstrap-offset-mobile-981.html]]
[[Radio Button|http://wowslider.com/posts/bootstrap-radio-button-1106.html]]
[[Sidebar Content|http://wowslider.com/posts/bootstrap-sidebar-content-1111.html]]
[[Clearfix Using|http://wowslider.com/posts/bootstrap-clearfix-using-1116.html]]
[[Header Working|http://wowslider.com/posts/bootstrap-header-working-1121.html]]
[[Label Button|http://wowslider.com/posts/bootstrap-label-button-1250.html]]
[[Progress bar Align|http://wowslider.com/posts/bootstrap-progress-bar-align-1260.html]]
[[Slider Working|http://wowslider.com/posts/bootstrap-slider-working-1265.html]]
[[Switch Work|http://wowslider.com/posts/bootstrap-switch-work-1270.html]]
[[Textarea Line|http://wowslider.com/posts/bootstrap-textarea-line-1392.html]]
[[Tooltip Placement|http://wowslider.com/posts/bootstrap-tooltip-placement-1397.html]]
[[Navbar Working|http://wowslider.com/posts/bootstrap-navbar-working-1402.html]]
[[Breakpoints Css|http://wowslider.com/posts/bootstrap-breakpoints-css-1407.html]]
[[Button groups dropdown|http://wowslider.com/posts/bootstrap-button-groups-dropdown-1532.html]]
[[Jumbotron Form|http://wowslider.com/posts/bootstrap-jumbotron-form-1537.html]]
[[Layout Header|http://wowslider.com/posts/bootstrap-layout-header-1542.html]]
[[Login forms Code|http://wowslider.com/posts/bootstrap-login-forms-code-1547.html]]
[[Modal Popup Position|http://wowslider.com/posts/bootstrap-modal-popup-position-1672.html]]
[[Row Css|http://wowslider.com/posts/bootstrap-row-css-1677.html]]
[[Multiselect CDN|http://wowslider.com/posts/bootstrap-multiselect-cdn-1682.html]]
[[Media queries Example|http://wowslider.com/posts/bootstrap-media-queries-example-1687.html]]
[[Select Tab|http://wowslider.com/posts/bootstrap-select-tab-1812.html]]
[[Panel Default|http://wowslider.com/posts/bootstrap-panel-default-1817.html]]
[[Tabs View|http://wowslider.com/posts/bootstrap-tabs-view-1822.html]]
[[Toggle Dropdown|http://wowslider.com/posts/bootstrap-toggle-dropdown-1827.html]]


[[Best Wonderful Responsive Bootstrap Image Slideshow and Gallery Scripts for 2018|http://wowslider.com/posts/best-wonderful-responsive-bootstrap-image-slideshow-and-gallery-scripts-for-1878.html]]
[[New and Beautiful HTML5 Bootstrap Carousel Video Players and Hamburger Menu Demos|http://wowslider.com/posts/new-and-beautiful-html5-bootstrap-carousel-video-players-and-hamburger-menu-1954.html]]
[[Newest Responsive HTML5 Templates That Will Impress You|http://wowslider.com/posts/responsive-html5-templates-2097.html]]
[[Top 53 Professional and Useful HTML Themes Compilation|http://wowslider.com/posts/top-53-professional-and-useful-html-themes-compilation-2206.html]]
[[Best 50 Brilliant CSS Themes Examples|http://wowslider.com/posts/best-50-brilliant-css-themes-examples-2244.html]]
[[Best 41 Brilliant jQuery Templates Examples|http://wowslider.com/posts/best-41-brilliant-jquery-templates-examples-2282.html]]
[[Top 54 Useful Mobile Templates Examples|http://wowslider.com/posts/top-54-useful-mobile-templates-examples-2319.html]]
[[Best 46 New CSS Templates Compilation|http://wowslider.com/posts/best-46-new-css-templates-compilation-2428.html]]
[[Top 41 HTML Registration Form Templates Examples for 2018, Explore it Now!|http://wowslider.com/posts/top-41-html-registration-form-templates-examples-for-2018-explore-it-now-2653.html]]
[[Awesome HTML Landing Page Templates for your Business in 2018|http://wowslider.com/posts/html-landing-page-templates-2656.html]]
[[95+ Free Bootstrap Themes Expected to Get in the Top in 2018|http://wowslider.com/posts/35-top-free-bootstrap-templates-2016-95.html]]



[[Host your website on GitHub Pages in a few clicks! GitHub Pages Tutorial|http://wowslider.com/posts/host-your-website-on-github-pages-231.html]]
[[

[[Which is the Best Hikvision NVR for 8 Cameras?|https://www.use-ip.co.uk/forum/threads/which-is-the-best-hikvision-nvr-for-8-cameras.1951/]]
https://imagemagick.org/script/convert.php
https://www.tecmint.com/things-to-do-after-minimal-rhel-centos-7-installation/#C1
https://tecadmin.net/install-imagemagick-on-centos-rhel/
https://www.imagemagick.org/script/index.php
https://unix.stackexchange.com/questions/233832/merge-two-video-clips-into-one-placing-them-next-to-each-other
https://withdave.com/2017/05/installing-ffmpeg-flvtool2-mp4box-imagemagick-centos7/
https://stackoverflow.com/questions/42736741/how-can-i-install-mp4box-on-centos7-3

https://www.vultr.com/docs/how-to-install-ffmpeg-on-centos <== wprdked

https://trac.ffmpeg.org/wiki/Concatenate  <== merge video files
https://www.vultr.com/docs/how-to-install-ffmpeg-on-centos  <=== convert worked

https://unix.stackexchange.com/questions/1670/how-can-i-use-ffmpeg-to-split-mpeg-video-into-10-minute-chunks
ffmpeg -i input.mp4 -c copy -map 0 -segment_time 8 -f segment output%03d.mp4

https://www.papersizes.org/a-paper-sizes-tstb.htm?utm_expid=76296969-1692.0bvwprvgRDuFGhMp6EjHUA.2&utm_referrer=https%3A%2F%2Fwww.google.com%2F
https://imagemagick.org/script/convert.php
https://www.tecmint.com/things-to-do-after-minimal-rhel-centos-7-installation/#C1
https://tecadmin.net/install-imagemagick-on-centos-rhel/
https://www.imagemagick.org/script/index.php
https://unix.stackexchange.com/questions/233832/merge-two-video-clips-into-one-placing-them-next-to-each-other
https://withdave.com/2017/05/installing-ffmpeg-flvtool2-mp4box-imagemagick-centos7/
https://stackoverflow.com/questions/42736741/how-can-i-install-mp4box-on-centos7-3
[[1841|https://www.youtube.com/watch?v=tKXKR-DVcno]]
https://www.youtube.com/watch?v=tKXKR-DVcno&t=747s
[[Switch Configuration: Cisco Catalyst 2950 |https://www.youtube.com/watch?v=Z8qin4kC_gA]]
[[Initial configuration of a Cisco Switch|https://www.youtube.com/watch?v=4RebvuNOD3E]]
https://www.youtube.com/watch?v=k9lUBDmlwbg
[[bootstrap 4]]
http://www.erllang.ga/crud-ajax-php-pdo-dengan-bootstrap.html
https://www.webslesson.info/2017/01/php-pdo-ajax-crud-with-data-tables-and-bootstrap-modals.html
https://groups.google.com/forum/#!topic/twitter-bootstrap-stackoverflow/o75WqO9AnQM
https://www.hnb.net/personal/savings/general-savings/capital-transaction-rupee-account-ctra
http://dfe.lk/web/index.php?option=com_content&view=article&id=120&Itemid=607&lang=en4
https://www.cbsl.gov.lk/sites/default/files/cbslweb_documents/publications/annual_report/2017/en/18_Part_03.pdf
[[Student Registration|php8036a]]
[[View Table |php8036b]]
[[login M1|php8036c]]
[[login M2|php8036d]]
[[login Baisc |php8036e]]
!How to Install the Latest GCC on Windows
{{{
1. Install Cygwin, which gives us a Unix-like environment running on Windows.
2. Install a set of Cygwin packages required for building GCC.
3. From within Cygwin, download the GCC source code, build and install it.
4. Test the new GCC compiler in C++14 mode using the -std=c++14 option.

Ref: https://preshing.com/20141108/how-to-install-the-latest-gcc-on-windows/
}}}

https://cygwin.com/install.html
[[myitem]]
[[audio TransReceiver | https://www.ebay.com.au/itm/HIFI-Bluetooth-Wireless-2-in1-Audio-Transmitter-Receiver-3-5MM-RCA-Music-Adapter/143010375138?epid=11016214052&hash=item214c1525e2:g:wTEAAOSw11Bb6SfU:rk:13:pf:0]]
https://i1.wp.com/www.boomlive.in/wp-content/uploads/2018/07/permafrost-featured-image.jpg?ssl=1
https://www.boomlive.in/the-truth-behind-viral-videos-claiming-to-show-the-earths-crust-moving-in-mongolia/
https://pymbook.readthedocs.io/en/latest/flask.html
https://medium.freecodecamp.org/structuring-a-flask-restplus-web-service-for-production-builds-c2ec676de563
https://www.fullstackpython.com/flask.html
https://buildasaasappwithflask.com/ <====
https://www.twago.com/
!Cude Blog: CSS
[[Stylesheet (style.css)|frwp001]]
[[font-awesome.css (css/font-awesome.css|frwp002]]
[[jquery.sidr.light.css (css/jquery.sidr.light.css)|frwp003]]
[[mediascreen.css (css/mediascreen.css)|frwp004]]

!Cude Blog: js
[[Cude Blog: customizer.js (js/customizer.js)|frwp005]]
[[Cude Blog: jquery.sidr.js (js/jquery.sidr.js)|frwp006]]
[[Cude Blog: scripts.js (js/scripts.js)|frwp007]]
   
!Cude Blog: Stylesheet (style.css)  (after modified)
{{{
/*
Theme Name: Cude Blog
Theme URI: https://web-cude.com/cude-blog/
Author: web-cude.com
Author URI: https://web-cude.com/
Description: Cude Blog is a simple WordPress theme for the blogging and news site. Lightweight and elegant design will make your web project irresistible.
Version: 1.0.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cude-blog
Tags: blog, news, two-columns, right-sidebar, custom-background, custom-colors, custom-header, custom-logo, custom-menu, translation-ready
*/


/*fonts*/
@import url('https://fonts.googleapis.com/css?family=Roboto');
@import url('https://fonts.googleapis.com/css?family=Russo+One');

/*normalize*/
*{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	outline: none;
	border-radius: 0;
	border: none;
}

html, body{
	font-family: 'Roboto', sans-serif;
	color:#cc3399;
	height: 100%;
	padding: 0;
	margin: 0;
}

a {
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s linear;
	color: #3333cc;
}

p, label {
	transition: all 0.3s linear;
}

img{
	-moz-transition: all 1s ease-out;
	-o-transition: all 1s ease-out;
	-webkit-transition: all 1s ease-out;
}

*::selection {
 	background: #86A6DF;
 	color:#ffffff;
}

input[type="text"], 
input[type="email"], 
input[type="url"], 
input[type="password"], 
input[type="search"], 
input[type="number"], 
input[type="tel"], 
input[type="range"], 
input[type="date"], 
input[type="month"], 
input[type="week"], 
input[type="time"], 
input[type="datetime"], 
input[type="datetime-local"], 
input[type="color"], 
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 8px;
}

input:focus:valid,
textarea:focus:valid {
	border: 1px solid #86A6DF;
}

input:focus:invalid,
textarea:focus:invalid {
 	border: 1px solid #E10000;
}

li {
	list-style: none;
}

embed, iframe, object {
    max-width: 100%;
}

ol {
	list-style: decimal;
}

blockquote {
	background: #f9f9f9;
	border-left: 10px solid #ccc;
	margin: 1.5em 10px;
	padding: 0.5em 10px;
	quotes: "\201C""\201D""\2018""\2019";
}
blockquote:before {
	color: #ccc;
	content: open-quote;
	font-size: 4em;
	line-height: 0.1em;
	margin-right: 0.25em;
	vertical-align: -0.4em;
}
blockquote p {
 	display: inline;
}

.btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.btn-primary {
    background-color: #324E7B;
    color:#ffffff;
}

/*Alignments*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.text-left{
	text-align: left;
}

.text-center{
	text-align: center;
}

.text-right{
	text-align: right;
}

.text-justify{
	text-align: justify;
}

/*Captions*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*Galleries*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

.sticky {
	display: block;
}

/*Accessibility*/
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

#content[tabindex="-1"]:focus {
	outline: 0;
}

.bypostauthor {
	display: block;
}

/*header*/
.header_wrapper{
	width: 100%;
	height: auto;
	display: inline-block;
	position: relative;
}

.header_wrapper_fix{
	position: fixed;
	width: 100%;
	background-color: #ffffff;
	z-index: 10;
	padding: 12px;
}

/*site branding*/
.header_logo{
	width: 80%;
	display: inline-block;
	float: left;
	text-align: left;
	background-color: #ffffff;
}

.header_logo .site-title{
	font-family: 'Roboto',sans-serif;
	font-size: 50px;
	color: #324E7B;
	font-weight: 600;
	letter-spacing: 1px;
	padding-left: 17px;
}

.header_logo .site-title span{
	color: #e60000;
}

.header_logo .site-description{
	padding-left: 17px;
    font-size: 14px;
}		

.header_logo .site-logo {
	width: 140px;
}

/*social*/
.header_search{
	width: 20%;
	float: left;
	text-align: right; 
	background-color: #ffffff;
	padding-right: 15px;
	padding-top: 4px;
}

.header_search .fa{
	font-size: 23px;
	color: #e60000;
	padding: 5px;
}

.menu-toggle{
	display: none!important;
}

/*header image*/
.header-image{
	width: 100%;
	height: 420px;
	background-position: center;
	background-size: cover;
}

.header-image-bg{
	background-color: #00000066;
    width: 100%;
    height: 180px;
    position: absolute;
    top: 50px;
}

.header-image-title{
	color: #ffffff;
	text-transform: uppercase;
	width: 100%;
	text-align: center;
	position: relative;
	top: 54%;
}

.header-image-title h1{
	font-size: 35px;
	letter-spacing: 1px;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
}	

.header-image .entry-meta{
	position: relative;
    top: 58%;
    left: 36%;
    text-align: center;
    width: 350px;
    color: #f8f8f8;
}

/*navigation menu*/
.header_menu{
	width: 100%;
	display: inline-block;
	border-top: 2px solid #ff0000;
} 

.navigation {
	list-style: none;
	padding: 0;
	margin: 0;
	background-color: #bf4080;
	display: inline-block;
	width: 100%;
	font-size: 28px;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    background-blend-mode: overlay;
	background-image: url(../cude-blog/img/sp_bg.png);
}

.navigation li {
	float: left;
}

.navigation li:hover {
	background: #222;
}

.navigation li a {
	display: block;
	padding: 5px 15px;
	text-decoration: none;
	line-height: 40px;
	color: #f8f8f8;
}

.navigation ul {
	display: none;
	position: absolute;
	list-style: none;
	margin-top:-1px;
	padding: 0;
	overflow: hidden;
}

.navigation ul li {
	float: none;
}

.navigation li:hover > ul {
	display: block;
	background: #222;
	border-top: 0;
}

.navigation li li a:hover {
	background: #000;
}

.navigation .current-menu-item{
	background: #222;
}

/*site content*/
.site-content{
	width: 100%;
	background-image: url(../cude-blog/img/sp_main_bg.png);
	display: inline-block;
	margin-top: -5px;
}

/*primary area*/
.primary{
	width: 70%;
	height: 100%;
	padding: 20px;
	display: inline-block;
	float: left;
}

.title{
	font-family: 'Roboto',sans-serif;
	font-weight: 100;
	color: #e60000;
	font-size: 30px;
	padding-left: 25px;
    padding-top: 25px;
}

/*posts list*/
.posts{
	clear: both;
	background-color: #f8f8f8;
	padding: 15px;
	margin-bottom: 30px;
	height: 217px;
	box-shadow: 0 10px 6px -6px #c7c7c7;
	border-top: 2px solid #dcdcdc;
}

.entry-title{
	font-family: 'Roboto',sans-serif;
	margin-bottom: 10px;
	padding: 0px;
}

.entry-title a{
	color: #324E7B;
	font-size: 20px;
	font-weight: 100;
}

.entry-thumbnail{
	float: left;
	overflow: hidden;
	width: 295px;
	height: 185px;
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 20px
}

.entry-thumbnail img{
	width: 295px;
	height: 185px;
	object-fit: cover;
}

.entry-thumbnail img:hover{
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
}

.posted-on{
	display: block;
	width: 100%;
	margin-bottom: 10px;
	font-size: 14px;
}

.posted-on a{
	color: #9c9c9c;
}	

.posted-on time{
	color: #324E7B;
}

.cd_cat{
	font-size: 14px;
	margin-right: 10px;
}

.cd_cat a{
 	color: #ffffff;
 	background-color: #e60000;
    padding: 5px;
    border-radius: 4px;
}

.tags{
    font-size: 14px;
}

.tags a{
 	color: #ffffff;
 	background-color: #324e7b;
    padding: 5px;
    border-radius: 4px;
}

.entry-summary{
	margin-top: 10px;
	text-align: justify;
	font-size: 14px;
	line-height: 23px;
	padding-right: 10px;
	color: #4e4e4e;
	text-overflow: ellipsis;
	height: 50px;
}

.archive-description{
	background-color: #f8f8f8;
    padding: 15px;
    margin-bottom: 30px;
    box-shadow: 0 10px 6px -6px #c7c7c7;
    border-top: 2px solid #dcdcdc;
    font-size: 16px;
	line-height: 25px;
}

/*post*/
.post{
	clear: both;
	background-color: #f8f8f8;
	padding: 15px;
	margin-bottom: 30px;
	box-shadow: 0 10px 6px -6px #c7c7c7;
	border-top: 2px solid #dcdcdc;
}

.entry-content{
	font-size: 16px;
	line-height: 28px;
	color: #4e4e4e;
	padding: 10px;
}

.entry-content h1, h2, h3, h4, h5, h6{
	font-family: 'Roboto', sans-serif;
    font-weight: 100;
    padding: 10px 0px 10px 0px;
}

.entry-content img{
	max-width: 100%;
	height: auto;
}

.entry-meta{
	padding: 0px 10px 10px 10px;
}

.entry-content table {
	width:100%;
	text-align:justify;
	border-collapse:collapse;
	border-bottom:1px solid #E5E5E5;
	border-top:1px solid #E5E5E5;
	margin-bottom:20px;
}

.entry-content table td {
    padding:8px 10px;
    border-right:1px solid #E5E5E5;
}

.entry-content table tr:hover {
    background-color:#86A6DF;
}

.entry-content table th {
	padding: 8px 5px;
	color: #1f1f1f;
	text-align:center;
	border-right: 1px solid #E5E5E5;
	font-weight: normal;
	background: #efefef;
}

.entry-content table tr {
    border-left:1px solid #E5E5E5;
    border-top:1px solid #E5E5E5;
}

/*page*/
.cb_page{
	clear: both;
	background-color: #f8f8f8;
	padding: 15px;
	margin-bottom: 30px;
	box-shadow: 0 10px 6px -6px #c7c7c7;
	border-top: 2px solid #dcdcdc;
}

.entry-content li:before {
	content: "\f00c";
	color: white;
	background: #2980B9;
	display: inline-block;
	text-align: center;
	margin: 5px 10px;
	line-height: 40px;
	width: 40px;
	height: 40px;
	font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
}

/*secondary area*/
.secondary{
	width: 30%;
	padding: 20px;
	display: inline-block;
}

/*widget*/
.widget {
	margin: 0 0 20px 0;
	font-size: 14px;
	color: #2d2d2d;
	padding: 20px;
	word-wrap: break-word;
	background-color: #f8f8f8;
	border: 1px solid rgba(0,0,0,0.05);
	border-top: 2px solid #dcdcdc;
	box-shadow: 0 10px 6px -6px #c7c7c7;
}

.widget p{
	line-height: 30px;
}

.widget table{
	width: 100%;
	height: 200px;
}

.widget table th{
	text-align: left;
}

.widget table caption{
	padding-bottom: 15px;
}

.widget-title {
	margin: 0 0 10px;
	color: #2d2d2d;
	border-bottom: 1px solid #dadada;
	padding-bottom: 5px;
	font-size: 14px;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
}

.widget > ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    font-size: 16px;
    line-height: 25px;
}

.widget > ul > li {
    padding-bottom: 5px;
}

.widget a {
    color: #324E7B;
}

/*footer*/
footer{
	display: inline-block;
	width: 100%;
	height: auto;
	background-color: #2d2d2d;
	border-top: 2px solid #e60000;
	background-blend-mode: overlay;
	background-image: url(../cude-blog/img/sp_bg.png);
	margin-bottom: -5px;
}

/*footer widget*/
.footer_widget{
	display: inline-block;
	float: left;
	margin: 0px;
	padding: 20px;
	width: 33%;
	font-family: 'Open Sans', sans-serif;
	color: #ffffff;
}

.footer_widget .title_widget{
	margin: 0 0 10px;
    color: #ffffff;
    border-bottom: 1px solid #dadada;
    padding-bottom: 5px;
    font-size: 14px;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
}  

.footer_widget .textwidget{
	color: #ffffff;
	font-size: 14px;
	margin-top: 15px;
}

.footer_widget p {
 	color: #ffffff;
 	line-height: 25px;
}

.footer_widget a {
	color: #e60000;
}

.footer_widget .text_widget .fa{
	font-size: 18px;
}

.footer_widget table{
	width: 100%;
	height: 200px;
}

.footer_widget table th{
	text-align: left;
}

.footer_widget table caption{
	padding-bottom: 15px;
}

.footer_widget > ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    font-size: 16px;
    line-height: 25px;
}

.footer_widget > ul > li {
    padding-bottom: 5px;
}

/*pagination*/
.pagination{
	width: 100%;
    text-align: center;
}

.pagination span{
	background-color: #324E7B;
    padding: 5px 10px;
    color: #ffffff;
}

.pagination a{
	background-color: #ffffff;
    padding: 5px 10px;
}    

.pagination a:hover{
	background-color: #324E7B;
	color: #ffffff;
}

.pagination .dots{
	background-color: #ffffff;
	color: #324E7B;
}

/*search*/
.cb_search {
	width: 100%;
	position: relative;
}

.cb_search input {
 	border: none;
}

.cb_search .input {
	width: 100%;
	padding: 8px 37px 9px 15px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	box-shadow: inset 0 0 5px rgba(0,0,0,0.1), inset 0 1px 2px rgba(0,0,0,0.3);
	border-radius: 5px;
	background: #EEE;
	color: #555;
	outline: none;
}

.cb_search .input:focus {
	box-shadow: inset 0 0 5px rgba(0,0,0,0.2), inset 0 1px 2px rgba(0,0,0,0.4);
	background: #E8E8E8;
	color: #333;
}

.cb_search .submit {
	position: absolute;
	top: 0;
	right: 0;
	width: 37px;
	height: 100%;
	cursor: pointer;
	background: url(../cude-blog/img/go.png) 50% no-repeat;
	opacity: 0.5;
}

.cb_search .submit:hover {
  	opacity: 0.8;
}

input[type="search"] {
 	-webkit-appearance: none;
}

/*To top*/
.cude_blog_to_top {
	padding: 5px;
	position: fixed;
	bottom: 10px;
	cursor: pointer;
	display: none;
	color: #e60000;
	font-size: 30px;
	left: 10px;
}

/*comment form*/
.comment-form{
	background-color: #f8f8f8;
    border: 1px solid #eaeaea;
    padding: 20px;
}

.comment-form p label{
	display: block!important;
    font-weight: 100;
    font-size: 14px;
    margin-top: 15px;
}    

.comments-area{
    margin-top: 25px;
}    

.comment-reply-title{
    color: #34495E;
    font-size: 18px;
    margin-left: 10px;
}

.comment-body{
    border: 1px solid rgba(0,0,0,0.05);
    background-color: #f8f8f8;
    margin-bottom: 15px;
}    

.required{
	color:#da0f00;
}

.form-submit{
	margin-top: 15px;
}

.comment-body footer{
    background-image: none;
    border-top: 2px solid #dcdcdc;
    background-color: #f8f8f8;
    padding: 15px;
}

.comment-content{
	padding: 15px;
	line-height: 25px;
	font-size: 16px;
}

.comment-author img{
	vertical-align: middle;
}

.comment-author{
	margin-bottom: 10px;
}

.reply{
	padding: 10px;	
}

.reply a {
	background-color: #324E7B;
    color: #ffffff;
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.comments-area li > ul,
.comments-area li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}
}}}
!Cude Blog: font-awesome.css (css/font-awesome.css)
{{{
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714286em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em;
}
.fa-pull-left {
  float: left;
}
.fa-pull-right {
  float: right;
}
.fa.fa-pull-left {
  margin-right: .3em;
}
.fa.fa-pull-right {
  margin-left: .3em;
}
/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-feed:before,
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before,
.fa-gratipay:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-slack:before {
  content: "\f198";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-pied-piper-pp:before {
  content: "\f1a7";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-spoon:before {
  content: "\f1b1";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-file-pdf-o:before {
  content: "\f1c1";
}
.fa-file-word-o:before {
  content: "\f1c2";
}
.fa-file-excel-o:before {
  content: "\f1c3";
}
.fa-file-powerpoint-o:before {
  content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}
.fa-file-code-o:before {
  content: "\f1c9";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}
.fa-history:before {
  content: "\f1da";
}
.fa-circle-thin:before {
  content: "\f1db";
}
.fa-header:before {
  content: "\f1dc";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-sliders:before {
  content: "\f1de";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-newspaper-o:before {
  content: "\f1ea";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bell-slash-o:before {
  content: "\f1f7";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-eyedropper:before {
  content: "\f1fb";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-area-chart:before {
  content: "\f1fe";
}
.fa-pie-chart:before {
  content: "\f200";
}
.fa-line-chart:before {
  content: "\f201";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-bus:before {
  content: "\f207";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-cc:before {
  content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}
.fa-meanpath:before {
  content: "\f20c";
}
.fa-buysellads:before {
  content: "\f20d";
}
.fa-connectdevelop:before {
  content: "\f20e";
}
.fa-dashcube:before {
  content: "\f210";
}
.fa-forumbee:before {
  content: "\f211";
}
.fa-leanpub:before {
  content: "\f212";
}
.fa-sellsy:before {
  content: "\f213";
}
.fa-shirtsinbulk:before {
  content: "\f214";
}
.fa-simplybuilt:before {
  content: "\f215";
}
.fa-skyatlas:before {
  content: "\f216";
}
.fa-cart-plus:before {
  content: "\f217";
}
.fa-cart-arrow-down:before {
  content: "\f218";
}
.fa-diamond:before {
  content: "\f219";
}
.fa-ship:before {
  content: "\f21a";
}
.fa-user-secret:before {
  content: "\f21b";
}
.fa-motorcycle:before {
  content: "\f21c";
}
.fa-street-view:before {
  content: "\f21d";
}
.fa-heartbeat:before {
  content: "\f21e";
}
.fa-venus:before {
  content: "\f221";
}
.fa-mars:before {
  content: "\f222";
}
.fa-mercury:before {
  content: "\f223";
}
.fa-intersex:before,
.fa-transgender:before {
  content: "\f224";
}
.fa-transgender-alt:before {
  content: "\f225";
}
.fa-venus-double:before {
  content: "\f226";
}
.fa-mars-double:before {
  content: "\f227";
}
.fa-venus-mars:before {
  content: "\f228";
}
.fa-mars-stroke:before {
  content: "\f229";
}
.fa-mars-stroke-v:before {
  content: "\f22a";
}
.fa-mars-stroke-h:before {
  content: "\f22b";
}
.fa-neuter:before {
  content: "\f22c";
}
.fa-genderless:before {
  content: "\f22d";
}
.fa-facebook-official:before {
  content: "\f230";
}
.fa-pinterest-p:before {
  content: "\f231";
}
.fa-whatsapp:before {
  content: "\f232";
}
.fa-server:before {
  content: "\f233";
}
.fa-user-plus:before {
  content: "\f234";
}
.fa-user-times:before {
  content: "\f235";
}
.fa-hotel:before,
.fa-bed:before {
  content: "\f236";
}
.fa-viacoin:before {
  content: "\f237";
}
.fa-train:before {
  content: "\f238";
}
.fa-subway:before {
  content: "\f239";
}
.fa-medium:before {
  content: "\f23a";
}
.fa-yc:before,
.fa-y-combinator:before {
  content: "\f23b";
}
.fa-optin-monster:before {
  content: "\f23c";
}
.fa-opencart:before {
  content: "\f23d";
}
.fa-expeditedssl:before {
  content: "\f23e";
}
.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: "\f240";
}
.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "\f241";
}
.fa-battery-2:before,
.fa-battery-half:before {
  content: "\f242";
}
.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "\f243";
}
.fa-battery-0:before,
.fa-battery-empty:before {
  content: "\f244";
}
.fa-mouse-pointer:before {
  content: "\f245";
}
.fa-i-cursor:before {
  content: "\f246";
}
.fa-object-group:before {
  content: "\f247";
}
.fa-object-ungroup:before {
  content: "\f248";
}
.fa-sticky-note:before {
  content: "\f249";
}
.fa-sticky-note-o:before {
  content: "\f24a";
}
.fa-cc-jcb:before {
  content: "\f24b";
}
.fa-cc-diners-club:before {
  content: "\f24c";
}
.fa-clone:before {
  content: "\f24d";
}
.fa-balance-scale:before {
  content: "\f24e";
}
.fa-hourglass-o:before {
  content: "\f250";
}
.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "\f251";
}
.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "\f252";
}
.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "\f253";
}
.fa-hourglass:before {
  content: "\f254";
}
.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "\f255";
}
.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "\f256";
}
.fa-hand-scissors-o:before {
  content: "\f257";
}
.fa-hand-lizard-o:before {
  content: "\f258";
}
.fa-hand-spock-o:before {
  content: "\f259";
}
.fa-hand-pointer-o:before {
  content: "\f25a";
}
.fa-hand-peace-o:before {
  content: "\f25b";
}
.fa-trademark:before {
  content: "\f25c";
}
.fa-registered:before {
  content: "\f25d";
}
.fa-creative-commons:before {
  content: "\f25e";
}
.fa-gg:before {
  content: "\f260";
}
.fa-gg-circle:before {
  content: "\f261";
}
.fa-tripadvisor:before {
  content: "\f262";
}
.fa-odnoklassniki:before {
  content: "\f263";
}
.fa-odnoklassniki-square:before {
  content: "\f264";
}
.fa-get-pocket:before {
  content: "\f265";
}
.fa-wikipedia-w:before {
  content: "\f266";
}
.fa-safari:before {
  content: "\f267";
}
.fa-chrome:before {
  content: "\f268";
}
.fa-firefox:before {
  content: "\f269";
}
.fa-opera:before {
  content: "\f26a";
}
.fa-internet-explorer:before {
  content: "\f26b";
}
.fa-tv:before,
.fa-television:before {
  content: "\f26c";
}
.fa-contao:before {
  content: "\f26d";
}
.fa-500px:before {
  content: "\f26e";
}
.fa-amazon:before {
  content: "\f270";
}
.fa-calendar-plus-o:before {
  content: "\f271";
}
.fa-calendar-minus-o:before {
  content: "\f272";
}
.fa-calendar-times-o:before {
  content: "\f273";
}
.fa-calendar-check-o:before {
  content: "\f274";
}
.fa-industry:before {
  content: "\f275";
}
.fa-map-pin:before {
  content: "\f276";
}
.fa-map-signs:before {
  content: "\f277";
}
.fa-map-o:before {
  content: "\f278";
}
.fa-map:before {
  content: "\f279";
}
.fa-commenting:before {
  content: "\f27a";
}
.fa-commenting-o:before {
  content: "\f27b";
}
.fa-houzz:before {
  content: "\f27c";
}
.fa-vimeo:before {
  content: "\f27d";
}
.fa-black-tie:before {
  content: "\f27e";
}
.fa-fonticons:before {
  content: "\f280";
}
.fa-reddit-alien:before {
  content: "\f281";
}
.fa-edge:before {
  content: "\f282";
}
.fa-credit-card-alt:before {
  content: "\f283";
}
.fa-codiepie:before {
  content: "\f284";
}
.fa-modx:before {
  content: "\f285";
}
.fa-fort-awesome:before {
  content: "\f286";
}
.fa-usb:before {
  content: "\f287";
}
.fa-product-hunt:before {
  content: "\f288";
}
.fa-mixcloud:before {
  content: "\f289";
}
.fa-scribd:before {
  content: "\f28a";
}
.fa-pause-circle:before {
  content: "\f28b";
}
.fa-pause-circle-o:before {
  content: "\f28c";
}
.fa-stop-circle:before {
  content: "\f28d";
}
.fa-stop-circle-o:before {
  content: "\f28e";
}
.fa-shopping-bag:before {
  content: "\f290";
}
.fa-shopping-basket:before {
  content: "\f291";
}
.fa-hashtag:before {
  content: "\f292";
}
.fa-bluetooth:before {
  content: "\f293";
}
.fa-bluetooth-b:before {
  content: "\f294";
}
.fa-percent:before {
  content: "\f295";
}
.fa-gitlab:before {
  content: "\f296";
}
.fa-wpbeginner:before {
  content: "\f297";
}
.fa-wpforms:before {
  content: "\f298";
}
.fa-envira:before {
  content: "\f299";
}
.fa-universal-access:before {
  content: "\f29a";
}
.fa-wheelchair-alt:before {
  content: "\f29b";
}
.fa-question-circle-o:before {
  content: "\f29c";
}
.fa-blind:before {
  content: "\f29d";
}
.fa-audio-description:before {
  content: "\f29e";
}
.fa-volume-control-phone:before {
  content: "\f2a0";
}
.fa-braille:before {
  content: "\f2a1";
}
.fa-assistive-listening-systems:before {
  content: "\f2a2";
}
.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}
.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "\f2a4";
}
.fa-glide:before {
  content: "\f2a5";
}
.fa-glide-g:before {
  content: "\f2a6";
}
.fa-signing:before,
.fa-sign-language:before {
  content: "\f2a7";
}
.fa-low-vision:before {
  content: "\f2a8";
}
.fa-viadeo:before {
  content: "\f2a9";
}
.fa-viadeo-square:before {
  content: "\f2aa";
}
.fa-snapchat:before {
  content: "\f2ab";
}
.fa-snapchat-ghost:before {
  content: "\f2ac";
}
.fa-snapchat-square:before {
  content: "\f2ad";
}
.fa-pied-piper:before {
  content: "\f2ae";
}
.fa-first-order:before {
  content: "\f2b0";
}
.fa-yoast:before {
  content: "\f2b1";
}
.fa-themeisle:before {
  content: "\f2b2";
}
.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "\f2b3";
}
.fa-fa:before,
.fa-font-awesome:before {
  content: "\f2b4";
}
.fa-handshake-o:before {
  content: "\f2b5";
}
.fa-envelope-open:before {
  content: "\f2b6";
}
.fa-envelope-open-o:before {
  content: "\f2b7";
}
.fa-linode:before {
  content: "\f2b8";
}
.fa-address-book:before {
  content: "\f2b9";
}
.fa-address-book-o:before {
  content: "\f2ba";
}
.fa-vcard:before,
.fa-address-card:before {
  content: "\f2bb";
}
.fa-vcard-o:before,
.fa-address-card-o:before {
  content: "\f2bc";
}
.fa-user-circle:before {
  content: "\f2bd";
}
.fa-user-circle-o:before {
  content: "\f2be";
}
.fa-user-o:before {
  content: "\f2c0";
}
.fa-id-badge:before {
  content: "\f2c1";
}
.fa-drivers-license:before,
.fa-id-card:before {
  content: "\f2c2";
}
.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: "\f2c3";
}
.fa-quora:before {
  content: "\f2c4";
}
.fa-free-code-camp:before {
  content: "\f2c5";
}
.fa-telegram:before {
  content: "\f2c6";
}
.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: "\f2c7";
}
.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}
.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: "\f2c9";
}
.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: "\f2ca";
}
.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: "\f2cb";
}
.fa-shower:before {
  content: "\f2cc";
}
.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: "\f2cd";
}
.fa-podcast:before {
  content: "\f2ce";
}
.fa-window-maximize:before {
  content: "\f2d0";
}
.fa-window-minimize:before {
  content: "\f2d1";
}
.fa-window-restore:before {
  content: "\f2d2";
}
.fa-times-rectangle:before,
.fa-window-close:before {
  content: "\f2d3";
}
.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: "\f2d4";
}
.fa-bandcamp:before {
  content: "\f2d5";
}
.fa-grav:before {
  content: "\f2d6";
}
.fa-etsy:before {
  content: "\f2d7";
}
.fa-imdb:before {
  content: "\f2d8";
}
.fa-ravelry:before {
  content: "\f2d9";
}
.fa-eercast:before {
  content: "\f2da";
}
.fa-microchip:before {
  content: "\f2db";
}
.fa-snowflake-o:before {
  content: "\f2dc";
}
.fa-superpowers:before {
  content: "\f2dd";
}
.fa-wpexplorer:before {
  content: "\f2de";
}
.fa-meetup:before {
  content: "\f2e0";
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

}}}
Cude Blog: jquery.sidr.light.css (css/jquery.sidr.light.css)

{{{
.sidr {
  display: block;
  position: fixed;
  top: 0;
  height: 100%;
  z-index: 999999;
  width: 260px;
  overflow-x: hidden;
  overflow-y: auto;
  font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
  font-size: 15px;
  background: #f8f8f8;
  color: #333;
  box-shadow: 0 0 5px 5px #ebebeb inset;
}
.sidr .sidr-inner {
  padding: 0 0 15px;
}
.sidr .sidr-inner > p {
  margin-left: 15px;
  margin-right: 15px;
}
.sidr.right {
  left: auto;
  right: -260px;
}
.sidr.left {
  left: -260px;
  right: auto;
}
.sidr h1,
.sidr h2,
.sidr h3,
.sidr h4,
.sidr h5,
.sidr h6 {
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RmZGZkZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #dfdfdf));
  background-image: -moz-linear-gradient(#ffffff, #dfdfdf);
  background-image: -webkit-linear-gradient(#ffffff, #dfdfdf);
  background-image: linear-gradient(#ffffff, #dfdfdf);
  font-size: 11px;
  font-weight: normal;
  padding: 0 15px;
  margin: 0 0 5px;
  color: #333;
  line-height: 24px;
  box-shadow: 0 5px 5px 3px rgba(0, 0, 0, 0.2);
}
.sidr p {
  font-size: 13px;
  margin: 0 0 12px;
}
.sidr p a {
  color: rgba(51, 51, 51, 0.9);
}
.sidr > p {
  margin-left: 15px;
  margin-right: 15px;
}
.sidr ul {
  display: block;
  margin: 0 0 15px;
  padding: 0;
  border-top: 1px solid #dfdfdf;
  border-bottom: 1px solid white;
}
.sidr ul li {
  display: block;
  margin: 0;
  line-height: 48px;
  border-top: 1px solid white;
  border-bottom: 1px solid #dfdfdf;
}
.sidr ul li:hover, .sidr ul li.active, .sidr ul li.sidr-class-active {
  border-top: 0;
  line-height: 49px;
}
.sidr ul li:hover > a,
.sidr ul li:hover > span, .sidr ul li.active > a,
.sidr ul li.active > span, .sidr ul li.sidr-class-active > a,
.sidr ul li.sidr-class-active > span {
  box-shadow: 0 0 15px 3px #ebebeb inset;
}
.sidr ul li a,
.sidr ul li span {
  padding: 0 15px;
  display: block;
  text-decoration: none;
  color: #333;
}
.sidr ul li ul {
  border-bottom: 0;
  margin: 0;
}
.sidr ul li ul li {
  line-height: 40px;
  font-size: 13px;
}
.sidr ul li ul li:last-child {
  border-bottom: 0;
}
.sidr ul li ul li:hover, .sidr ul li ul li.active, .sidr ul li ul li.sidr-class-active {
  border-top: 0;
  line-height: 41px;
}
.sidr ul li ul li:hover > a,
.sidr ul li ul li:hover > span, .sidr ul li ul li.active > a,
.sidr ul li ul li.active > span, .sidr ul li ul li.sidr-class-active > a,
.sidr ul li ul li.sidr-class-active > span {
  box-shadow: 0 0 15px 3px #ebebeb inset;
}
.sidr ul li ul li a,
.sidr ul li ul li span {
  color: rgba(51, 51, 51, 0.8);
  padding-left: 30px;
}
.sidr form {
  margin: 0 15px;
}
.sidr label {
  font-size: 13px;
}
.sidr input[type="text"],
.sidr input[type="password"],
.sidr input[type="date"],
.sidr input[type="datetime"],
.sidr input[type="email"],
.sidr input[type="number"],
.sidr input[type="search"],
.sidr input[type="tel"],
.sidr input[type="time"],
.sidr input[type="url"],
.sidr textarea,
.sidr select {
  width: 100%;
  font-size: 13px;
  padding: 5px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 0 10px;
  border-radius: 2px;
  border: 0;
  background: rgba(0, 0, 0, 0.1);
  color: rgba(51, 51, 51, 0.6);
  display: block;
  clear: both;
}
.sidr input[type=checkbox] {
  width: auto;
  display: inline;
  clear: none;
}
.sidr input[type=button],
.sidr input[type=submit] {
  color: #f8f8f8;
  background: #333;
}
.sidr input[type=button]:hover,
.sidr input[type=submit]:hover {
  background: rgba(51, 51, 51, 0.9);
}

}}}
!Cude Blog: mediascreen.css (css/mediascreen.css)
{{{
@media screen and (max-width:1110px) {
	.primary {
		width: 100%;
	}

	.secondary {
		width: 100%;
	}

	.widget{
		float: left;
	    width: 100%;
	}

	.footer_widget{
		float: left;
	    width: 100%;
	}
}

@media screen and (max-width:780px) {

	.header-image-title h1{
		font-size: 28px;
	}

	.entry-summary{
		font-size: 12px;
	}

	.entry-thumbnail{
		width: 250px;
	}

	.entry-thumbnail img{
		width: 250px;
	}

	.menu-toggle{
		display: inline-block!important;
	}

	.header_menu{
		display: none;
	}

	.cb_search{
		display: none;
	}

}

@media screen and (max-width:650px) {

	.header-image-title h1{
		font-size: 20px;
	}

	.entry-thumbnail{
		display: none;
	}
	
	.comment-form textarea{ 
		width: 100%;
	}

	.entry-meta{
		padding: 0px;
	}

}    
}}}
!Cude Blog: customizer.js (js/customizer.js)
{{{
/**
 * File customizer.js.
 *
 * Theme Customizer enhancements for a better user experience.
 *
 * Contains handlers to make Theme Customizer preview reload changes asynchronously.
 */

( function( $ ) {

	// Site title and description.
	wp.customize( 'blogname', function( value ) {
		value.bind( function( to ) {
			$( '.site-title a' ).text( to );
		} );
	} );
	wp.customize( 'blogdescription', function( value ) {
		value.bind( function( to ) {
			$( '.site-description' ).text( to );
		} );
	} );

	// Header text color.
	wp.customize( 'header_textcolor', function( value ) {
		value.bind( function( to ) {
			if ( 'blank' === to ) {
				$( '.site-title, .site-description' ).css( {
					'clip': 'rect(1px, 1px, 1px, 1px)',
					'position': 'absolute'
				} );
			} else {
				$( '.site-title, .site-description' ).css( {
					'clip': 'auto',
					'position': 'relative'
				} );
				$( '.site-title a, .site-description' ).css( {
					'color': to
				} );
			}
		} );
	} );
} )( jQuery );

}}}
!Cude Blog: jquery.sidr.js (js/jquery.sidr.js)
{{{
/*! sidr - v2.2.1 - 2016-02-17
 * http://www.berriart.com/sidr/
 * Copyright (c) 2013-2016 Alberto Varela; Licensed MIT */

(function () {
  'use strict';

  var babelHelpers = {};

  babelHelpers.classCallCheck = function (instance, Constructor) {
    if (!(instance instanceof Constructor)) {
      throw new TypeError("Cannot call a class as a function");
    }
  };

  babelHelpers.createClass = function () {
    function defineProperties(target, props) {
      for (var i = 0; i < props.length; i++) {
        var descriptor = props[i];
        descriptor.enumerable = descriptor.enumerable || false;
        descriptor.configurable = true;
        if ("value" in descriptor) descriptor.writable = true;
        Object.defineProperty(target, descriptor.key, descriptor);
      }
    }

    return function (Constructor, protoProps, staticProps) {
      if (protoProps) defineProperties(Constructor.prototype, protoProps);
      if (staticProps) defineProperties(Constructor, staticProps);
      return Constructor;
    };
  }();

  babelHelpers;

  var sidrStatus = {
    moving: false,
    opened: false
  };

  var helper = {
    // Check for valids urls
    // From : http://stackoverflow.com/questions/5717093/check-if-a-javascript-string-is-an-url

    isUrl: function isUrl(str) {
      var pattern = new RegExp('^(https?:\\/\\/)?' + // protocol
      '((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.?)+[a-z]{2,}|' + // domain name
      '((\\d{1,3}\\.){3}\\d{1,3}))' + // OR ip (v4) address
      '(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*' + // port and path
      '(\\?[;&a-z\\d%_.~+=-]*)?' + // query string
      '(\\#[-a-z\\d_]*)?$', 'i'); // fragment locator

      if (pattern.test(str)) {
        return true;
      } else {
        return false;
      }
    },


    // Add sidr prefixes
    addPrefixes: function addPrefixes($element) {
      this.addPrefix($element, 'id');
      this.addPrefix($element, 'class');
      $element.removeAttr('style');
    },
    addPrefix: function addPrefix($element, attribute) {
      var toReplace = $element.attr(attribute);

      if (typeof toReplace === 'string' && toReplace !== '' && toReplace !== 'sidr-inner') {
        $element.attr(attribute, toReplace.replace(/([A-Za-z0-9_.\-]+)/g, 'sidr-' + attribute + '-$1'));
      }
    },


    // Check if transitions is supported
    transitions: function () {
      var body = document.body || document.documentElement,
          style = body.style,
          supported = false,
          property = 'transition';

      if (property in style) {
        supported = true;
      } else {
        (function () {
          var prefixes = ['moz', 'webkit', 'o', 'ms'],
              prefix = undefined,
              i = undefined;

          property = property.charAt(0).toUpperCase() + property.substr(1);
          supported = function () {
            for (i = 0; i < prefixes.length; i++) {
              prefix = prefixes[i];
              if (prefix + property in style) {
                return true;
              }
            }

            return false;
          }();
          property = supported ? '-' + prefix.toLowerCase() + '-' + property.toLowerCase() : null;
        })();
      }

      return {
        supported: supported,
        property: property
      };
    }()
  };

  var $$2 = jQuery;

  var bodyAnimationClass = 'sidr-animating';
  var openAction = 'open';
  var closeAction = 'close';
  var transitionEndEvent = 'webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend';
  var Menu = function () {
    function Menu(name) {
      babelHelpers.classCallCheck(this, Menu);

      this.name = name;
      this.item = $$2('#' + name);
      this.openClass = name === 'sidr' ? 'sidr-open' : 'sidr-open ' + name + '-open';
      this.menuWidth = this.item.outerWidth(true);
      this.speed = this.item.data('speed');
      this.side = this.item.data('side');
      this.displace = this.item.data('displace');
      this.timing = this.item.data('timing');
      this.method = this.item.data('method');
      this.onOpenCallback = this.item.data('onOpen');
      this.onCloseCallback = this.item.data('onClose');
      this.onOpenEndCallback = this.item.data('onOpenEnd');
      this.onCloseEndCallback = this.item.data('onCloseEnd');
      this.body = $$2(this.item.data('body'));
    }

    babelHelpers.createClass(Menu, [{
      key: 'getAnimation',
      value: function getAnimation(action, element) {
        var animation = {},
            prop = this.side;

        if (action === 'open' && element === 'body') {
          animation[prop] = this.menuWidth + 'px';
        } else if (action === 'close' && element === 'menu') {
          animation[prop] = '-' + this.menuWidth + 'px';
        } else {
          animation[prop] = 0;
        }

        return animation;
      }
    }, {
      key: 'prepareBody',
      value: function prepareBody(action) {
        var prop = action === 'open' ? 'hidden' : '';

        // Prepare page if container is body
        if (this.body.is('body')) {
          var $html = $$2('html'),
              scrollTop = $html.scrollTop();

          $html.css('overflow-x', prop).scrollTop(scrollTop);
        }
      }
    }, {
      key: 'openBody',
      value: function openBody() {
        if (this.displace) {
          var transitions = helper.transitions,
              $body = this.body;

          if (transitions.supported) {
            $body.css(transitions.property, this.side + ' ' + this.speed / 1000 + 's ' + this.timing).css(this.side, 0).css({
              width: $body.width(),
              position: 'absolute'
            });
            $body.css(this.side, this.menuWidth + 'px');
          } else {
            var bodyAnimation = this.getAnimation(openAction, 'body');

            $body.css({
              width: $body.width(),
              position: 'absolute'
            }).animate(bodyAnimation, {
              queue: false,
              duration: this.speed
            });
          }
        }
      }
    }, {
      key: 'onCloseBody',
      value: function onCloseBody() {
        var transitions = helper.transitions,
            resetStyles = {
          width: '',
          position: '',
          right: '',
          left: ''
        };

        if (transitions.supported) {
          resetStyles[transitions.property] = '';
        }

        this.body.css(resetStyles).unbind(transitionEndEvent);
      }
    }, {
      key: 'closeBody',
      value: function closeBody() {
        var _this = this;

        if (this.displace) {
          if (helper.transitions.supported) {
            this.body.css(this.side, 0).one(transitionEndEvent, function () {
              _this.onCloseBody();
            });
          } else {
            var bodyAnimation = this.getAnimation(closeAction, 'body');

            this.body.animate(bodyAnimation, {
              queue: false,
              duration: this.speed,
              complete: function complete() {
                _this.onCloseBody();
              }
            });
          }
        }
      }
    }, {
      key: 'moveBody',
      value: function moveBody(action) {
        if (action === openAction) {
          this.openBody();
        } else {
          this.closeBody();
        }
      }
    }, {
      key: 'onOpenMenu',
      value: function onOpenMenu(callback) {
        var name = this.name;

        sidrStatus.moving = false;
        sidrStatus.opened = name;

        this.item.unbind(transitionEndEvent);

        this.body.removeClass(bodyAnimationClass).addClass(this.openClass);

        this.onOpenEndCallback();

        if (typeof callback === 'function') {
          callback(name);
        }
      }
    }, {
      key: 'openMenu',
      value: function openMenu(callback) {
        var _this2 = this;

        var $item = this.item;

        if (helper.transitions.supported) {
          $item.css(this.side, 0).one(transitionEndEvent, function () {
            _this2.onOpenMenu(callback);
          });
        } else {
          var menuAnimation = this.getAnimation(openAction, 'menu');

          $item.css('display', 'block').animate(menuAnimation, {
            queue: false,
            duration: this.speed,
            complete: function complete() {
              _this2.onOpenMenu(callback);
            }
          });
        }
      }
    }, {
      key: 'onCloseMenu',
      value: function onCloseMenu(callback) {
        this.item.css({
          left: '',
          right: ''
        }).unbind(transitionEndEvent);
        $$2('html').css('overflow-x', '');

        sidrStatus.moving = false;
        sidrStatus.opened = false;

        this.body.removeClass(bodyAnimationClass).removeClass(this.openClass);

        this.onCloseEndCallback();

        // Callback
        if (typeof callback === 'function') {
          callback(name);
        }
      }
    }, {
      key: 'closeMenu',
      value: function closeMenu(callback) {
        var _this3 = this;

        var item = this.item;

        if (helper.transitions.supported) {
          item.css(this.side, '').one(transitionEndEvent, function () {
            _this3.onCloseMenu(callback);
          });
        } else {
          var menuAnimation = this.getAnimation(closeAction, 'menu');

          item.animate(menuAnimation, {
            queue: false,
            duration: this.speed,
            complete: function complete() {
              _this3.onCloseMenu();
            }
          });
        }
      }
    }, {
      key: 'moveMenu',
      value: function moveMenu(action, callback) {
        this.body.addClass(bodyAnimationClass);

        if (action === openAction) {
          this.openMenu(callback);
        } else {
          this.closeMenu(callback);
        }
      }
    }, {
      key: 'move',
      value: function move(action, callback) {
        // Lock sidr
        sidrStatus.moving = true;

        this.prepareBody(action);
        this.moveBody(action);
        this.moveMenu(action, callback);
      }
    }, {
      key: 'open',
      value: function open(callback) {
        var _this4 = this;

        // Check if is already opened or moving
        if (sidrStatus.opened === this.name || sidrStatus.moving) {
          return;
        }

        // If another menu opened close first
        if (sidrStatus.opened !== false) {
          var alreadyOpenedMenu = new Menu(sidrStatus.opened);

          alreadyOpenedMenu.close(function () {
            _this4.open(callback);
          });

          return;
        }

        this.move('open', callback);

        // onOpen callback
        this.onOpenCallback();
      }
    }, {
      key: 'close',
      value: function close(callback) {
        // Check if is already closed or moving
        if (sidrStatus.opened !== this.name || sidrStatus.moving) {
          return;
        }

        this.move('close', callback);

        // onClose callback
        this.onCloseCallback();
      }
    }, {
      key: 'toggle',
      value: function toggle(callback) {
        if (sidrStatus.opened === this.name) {
          this.close(callback);
        } else {
          this.open(callback);
        }
      }
    }]);
    return Menu;
  }();

  var $$1 = jQuery;

  function execute(action, name, callback) {
    var sidr = new Menu(name);

    switch (action) {
      case 'open':
        sidr.open(callback);
        break;
      case 'close':
        sidr.close(callback);
        break;
      case 'toggle':
        sidr.toggle(callback);
        break;
      default:
        $$1.error('Method ' + action + ' does not exist on jQuery.sidr');
        break;
    }
  }

  var i;
  var $ = jQuery;
  var publicMethods = ['open', 'close', 'toggle'];
  var methodName;
  var methods = {};
  var getMethod = function getMethod(methodName) {
    return function (name, callback) {
      // Check arguments
      if (typeof name === 'function') {
        callback = name;
        name = 'sidr';
      } else if (!name) {
        name = 'sidr';
      }

      execute(methodName, name, callback);
    };
  };
  for (i = 0; i < publicMethods.length; i++) {
    methodName = publicMethods[i];
    methods[methodName] = getMethod(methodName);
  }

  function sidr(method) {
    if (method === 'status') {
      return sidrStatus;
    } else if (methods[method]) {
      return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
    } else if (typeof method === 'function' || typeof method === 'string' || !method) {
      return methods.toggle.apply(this, arguments);
    } else {
      $.error('Method ' + method + ' does not exist on jQuery.sidr');
    }
  }

  var $$3 = jQuery;

  function fillContent($sideMenu, settings) {
    // The menu content
    if (typeof settings.source === 'function') {
      var newContent = settings.source(name);

      $sideMenu.html(newContent);
    } else if (typeof settings.source === 'string' && helper.isUrl(settings.source)) {
      $$3.get(settings.source, function (data) {
        $sideMenu.html(data);
      });
    } else if (typeof settings.source === 'string') {
      var htmlContent = '',
          selectors = settings.source.split(',');

      $$3.each(selectors, function (index, element) {
        htmlContent += '<div class="sidr-inner">' + $$3(element).html() + '</div>';
      });

      // Renaming ids and classes
      if (settings.renaming) {
        var $htmlContent = $$3('<div />').html(htmlContent);

        $htmlContent.find('*').each(function (index, element) {
          var $element = $$3(element);

          helper.addPrefixes($element);
        });
        htmlContent = $htmlContent.html();
      }

      $sideMenu.html(htmlContent);
    } else if (settings.source !== null) {
      $$3.error('Invalid Sidr Source');
    }

    return $sideMenu;
  }

  function fnSidr(options) {
    var transitions = helper.transitions,
        settings = $$3.extend({
      name: 'sidr', // Name for the 'sidr'
      speed: 200, // Accepts standard jQuery effects speeds (i.e. fast, normal or milliseconds)
      side: 'left', // Accepts 'left' or 'right'
      source: null, // Override the source of the content.
      renaming: true, // The ids and classes will be prepended with a prefix when loading existent content
      body: 'body', // Page container selector,
      displace: true, // Displace the body content or not
      timing: 'ease', // Timing function for CSS transitions
      method: 'toggle', // The method to call when element is clicked
      bind: 'touchstart click', // The event(s) to trigger the menu
      onOpen: function onOpen() {},
      // Callback when sidr start opening
      onClose: function onClose() {},
      // Callback when sidr start closing
      onOpenEnd: function onOpenEnd() {},
      // Callback when sidr end opening
      onCloseEnd: function onCloseEnd() {} // Callback when sidr end closing

    }, options),
        name = settings.name,
        $sideMenu = $$3('#' + name);

    // If the side menu do not exist create it
    if ($sideMenu.length === 0) {
      $sideMenu = $$3('<div />').attr('id', name).appendTo($$3('body'));
    }

    // Add transition to menu if are supported
    if (transitions.supported) {
      $sideMenu.css(transitions.property, settings.side + ' ' + settings.speed / 1000 + 's ' + settings.timing);
    }

    // Adding styles and options
    $sideMenu.addClass('sidr').addClass(settings.side).data({
      speed: settings.speed,
      side: settings.side,
      body: settings.body,
      displace: settings.displace,
      timing: settings.timing,
      method: settings.method,
      onOpen: settings.onOpen,
      onClose: settings.onClose,
      onOpenEnd: settings.onOpenEnd,
      onCloseEnd: settings.onCloseEnd
    });

    $sideMenu = fillContent($sideMenu, settings);

    return this.each(function () {
      var $this = $$3(this),
          data = $this.data('sidr'),
          flag = false;

      // If the plugin hasn't been initialized yet
      if (!data) {
        sidrStatus.moving = false;
        sidrStatus.opened = false;

        $this.data('sidr', name);

        $this.bind(settings.bind, function (event) {
          event.preventDefault();

          if (!flag) {
            flag = true;
            sidr(settings.method, name);

            setTimeout(function () {
              flag = false;
            }, 100);
          }
        });
      }
    });
  }

  jQuery.sidr = sidr;
  jQuery.fn.sidr = fnSidr;

}());
}}}
!Cude Blog: scripts.js (js/scripts.js)
{{{
jQuery(document).ready(function($) {

	$('.menu-toggle').sidr({side: 'right'});

	$(window).scroll(function() {
		if($(this).scrollTop() != 0) { 
			$('.cude_blog_to_top').fadeIn();
		} else {
			$('.cude_blog_to_top').fadeOut();
		}
	});

	$('.cude_blog_to_top').click(function() {
		$('body,html').animate({scrollTop:0},800);
	});

});	
}}}
http://www.fruitmentor.com/grafting-orange-trees-t-bud
[[The Benefits Of Being A Genuine Person - How To Be True To Yourself|https://steemit.com/life/@luzcypher/the-benefits-of-being-a-genuine-person-how-to-be-true-to-yourself]]
[[How to Be Genuine|https://www.wikihow.com/Be-Genuine]]
https://circuitdigest.com/article/7-segment-display <== used
http://www.circuitbasics.com/how-to-set-up-an-ultrasonic-range-finder-on-an-arduino/ <== used
https://sparks.gogo.co.nz/ch340.html<== DCcduino uno
https://www.arduino.cc/en/Main/Software <== donloaded  Windows Installer, for Windows XP and up 

https://create.arduino.cc/projecthub/SHAHIR_nasar/ultrasonic-sensor-d34f8b


[[RangeFinder]]
''Some additional likns''
[[Add501]]
https://gist.github.com/pvtmert
https://packages.debian.org/stretch/net/gns3
https://docs.cumulusnetworks.com/display/VX/GNS3+and+VirtualBox
https://www.csd.uoc.gr/~hy435/material/GNS3-0.5-tutorial.pdf

https://rednectar.net/gns3-workbench/
https://mum.mikrotik.com//presentations/ME16/presentation_3571_1476769666.pdf

https://frinx.io/ftpp/network-device-simulation-with-gns3
https://wwwlyndacom.ezproxy.slq.qld.gov.au/Linux-tutorials/Integrating-Kali-GNS3/540350/586621-4.html
https://wiki.vyos.net/wiki/VyOS_on_GNS3

GNS3 2.1 Install and configuration on Windows 10 (Part 9): Cisco VIRL IOSv import into GNS3
[[diabetics | h001]]
[[The Myth about Blood Sugars and Diabetes|https://www.youtube.com/watch?v=P7fHYSyvxU0]]
[[Sugar Toxicity|https://www.youtube.com/watch?v=HWI1TljBsaw]]
[[The Drink 8 Glasses Water Per Day Big Fat Lie!|https://www.youtube.com/watch?v=ae4wZ79GzGU]]

Addition:
https://www.sciencedirect.com/science/article/pii/S2211913211000064?via%3Dihub
https://www.ncbi.nlm.nih.go|v/pmc/articles/PMC4715090/
''Hacking'' / ''Ethical Hacking'' / ''black hacking''/ ''Grey Hacking''
https://dataismo.es/oscp/Metasploit--msfvenom.html

https://github.com/Snifer

https://nitesculucian.github.io/2018/07/24/msfvenom-cheat-sheet/

http://security-geek.in/2016/09/07/msfvenom-cheat-sheet/

https://xapax.gitbooks.io/security/content/reverse-shell.html

https://security.stackexchange.com/questions/173669/msfvenom-payload-with-dynamic-options

https://security.stackexchange.com/questions/160601/difference-between-windows-shell-reverse-tcp-and-windows-shell-reverse-tcp-e

https://guif.re/man <=== ''interesting Manual''

https://widesecurity.net/linux/msfvenom-cheat-sheet/

https://www.jollyfrogs.com/kali-msfvenom/

https://www.commandlinefu.com/commands/view/9244/create-and-encode-a-reverse-tcp-meterpreter-payload-with-shikata_ga_nai.


''Wet-Werk Hydroponics''
[[Building an Inexpensive Hydroponics/Aeroponics System|https://www.youtube.com/watch?v=_ewOsgoGQL4&pbjreload=10]]
[img[https://img2.files.wordpress.com/2018/06/screenhunter-1717.jpg?w=1496]]
https://www.w3schools.com/html/html5_new_elements.asp



http://how2html.pl/input-type-html/
https://webplatform.github.io/docs/html/elements/fieldset/
https://www.electrictoolbox.com/fieldset-legend-tags-html-forms/
https://github.com/Maryanushka/vmph <== html 
https://github.com/heymowski/YTModal
[[Robots.txt|html001]]
[[SVG related |svg000]]





https://www.meetup.com/girldevelopitcbus/events/220188529/
!Robirs.txt
http://www.robotstxt.org/


!HTML5 Form Validation Examples
https://www.the-art-of-web.com/html/html5-form-validation/

1. The 'required' attribute 
   
{{{
Your Name: <input type="text" name="name" required>
}}}

2. New text INPUT types
''INPUT type="email"''
{{{
Email Address: <input type="email" name="email" required placeholder="Enter a valid email address">
}}}

''INPUT type="url"''
{{{
Website: <input type="url" name="website" required pattern="https?://.+">
}}}

''INPUT type="number" and type="range"''
{{{
Age: <input type="number" size="6" name="age" min="18" max="99" value="21"><br>
Satisfaction: <input type="range" size="2" name="satisfaction" min="1" max="5" value="3">
}}}
''INPUT type="password"''
https://www.the-art-of-web.com/javascript/validate-password/
https://www.the-art-of-web.com/html/html5-form-validation/
[[HTML Forms{html0101]]
[[INPUT Type|html0102]]
HTML Forms
!The <form> Element
The HTML'' <form>'' element defines a form that is used to collect user input:
| Type | Description |
|<input type="text">	|Defines a one-line text input field|
|<input type="radio">|Defines a radio button (for selecting one of many choices)|
|<input type="submit">|Defines a submit button (for submitting the form)|

The <input> Element
Text Input
Radio Button Input
The Submit Button
The Action Attribute
The Target Attribute
The Method Attribute

When to Use GET?
When to Use POST?
The Name Attribute
Grouping Form Data with <fieldset>


''list of <form> attributes:''

| Attribute	| Description |
|accept-charset|Specifies the charset used in the submitted form (default: the page charset).|
|action|Specifies an address (url) where to submit the form (default: the submitting page).|
|autocomplete|	Specifies if the browser should autocomplete the form (default: on).|
|enctype|Specifies the encoding of the submitted data (default: is url-encoded).|
|method|Specifies the HTTP method used when submitting the form (default: GET)|.
|name|Specifies a name used to identify the form (for DOM usage: document.forms.name)|.
|novalidate|Specifies that the browser should not validate the form|
|target|Specifies the target of the address in the action attribute (default: _self)|.
!Input Type Text
''<input type="text">'' defines a one-line text input field:
{{{
<form>
  First name:<br>
  <input type="text" name="firstname"><br>
  Last name:<br>
  <input type="text" name="lastname">
</form>
}}}

!Input Type Password
''<input type="password">'' defines a password field:
{{{
<form>
  User name:<br>
  <input type="text" name="username"><br>
  User password:<br>
  <input type="password" name="psw">
</form>

Note: The characters in a password field are masked (shown as asterisks or circles).
}}}
!Input Type Submit
''<input type="submit">'' defines a button for submitting form data to a form-handler.

The form-handler is typically a server page with a script for processing input data.

The form-handler is specified in the form's action attribute:
{{{
<form action="/action_page.php">
  First name:<br>
  <input type="text" name="firstname" value="Mickey"><br>
  Last name:<br>
  <input type="text" name="lastname" value="Mouse"><br><br>
  <input type="submit" value="Submit">
</form>
}}}
!Input Type Reset
''<input type="reset">'' defines a reset button that will reset all form values to their default values:
{{{
<form action="/action_page.php">
  First name:<br>
  <input type="text" name="firstname" value="Mickey"><br>
  Last name:<br>
  <input type="text" name="lastname" value="Mouse"><br><br>
  <input type="submit" value="Submit">
  <input type="reset">
</form>
}}}
!Input Type Radio
''<input type="radio">'' defines a radio button.

Radio buttons let a user select ONLY ONE of a limited number of choices:
{{{
<form>
  <input type="radio" name="gender" value="male" checked> Male<br>
  <input type="radio" name="gender" value="female"> Female<br>
  <input type="radio" name="gender" value="other"> Other
</form>
}}}
!Input Type Checkbox
''<input type="checkbox">'' defines a checkbox.

Checkboxes let a user select ZERO or MORE options of a limited number of choices
{{{
<form>
  <input type="checkbox" name="vehicle1" value="Bike"> I have a bike<br>
  <input type="checkbox" name="vehicle2" value="Car"> I have a car 
</form>
}}}
!Input Type Button
''<input type="button">'' defines a button:
{{{
<input type="button" onclick="alert('Hello World!')" value="Click Me!">
}}}
!HTML5 Input Types
HTML5 added several new input types:

*color
*date
*datetime-local
*email
*month
*number
*range
*search
*tel
*time
*url
*week
!fieldset
{{{
<html>
</head><head><title>::- ADMIN LOGIN - ::</title>
<!-----------------call style sheet--------------------------------->
<link href="styles/login.css" rel="stylesheet" type="text/css">
<!-----------------style sheet end--------------------------------->
</head>
<body>
<form>
  <fieldset>
  <legend>Subscription info</legend>
    <label for="name">Username:</label>
    <input type="text" name="name" id="name" />
    <br />
    <label for="mail">E-mail:</label>
    <input type="text" name="mail" id="mail" />
    <br />
    <label for="address">Address:</label>
    <input type="text" name="address" id="address" size="40" />
  </fieldset>
</form>
</body></html>  
<!--http://www.pixy.cz/blogg/clanky/css-fieldsetandlabels.html -->
}}}
!CSS
{{{
fieldset {
  padding: 1em;
  font:80%/1 sans-serif;
  }
label {
  float:left;
  width:25%;
  margin-right:0.5em;
  padding-top:0.2em;
  text-align:right;
  font-weight:bold;
  }

fieldset { border:1px solid green }

legend {
  padding: 0.2em 0.5em;
  border:1px solid green;
  color:green;
  font-size:90%;
  text-align:right;
  }


}}}
Type the text for 'New Tiddler'
https://github.com/rg3/youtube-dl/blob/master/README.md#readme
[[சிவலிங்கத்திற்கும் வாடிகன் நகரத்திற்கும் உள்ள அதிர்ச்சியூட்டும் தொடர்பு!!!|https://www.youtube.com/watch?v=47A8RVnDtOU]]
https://www.youtube.com/watch?v=tA4ATmIqo_k
https://telecom.altanai.com/sip/
https://github.com/braziljs/eloquente-javascript/blob/master/chapters/09-expressoes-regulares.md
https://github.com/braziljs/eloquente-javascript/tree/master/chapters
https://github.com/diafygi/webrtc-ips
https://www.cnblogs.com/dunitian/p/5698718.html
https://github.com/traviswimer/SignalFire.js


https://www.youtube.com/watch?v=pAluQXDTM9g
[[memorize ]]
http://www.columbia.edu/acis/dev/unixdev/doc/wind/test.php.txt
http://www2.alles-tabak.net/jquery.progressbar/demo.txt <== something coming out
http://www.tna.be/classes/activecalendar/data/showcode.php?page=js.php <=== explore it
{{{
oot@kali:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 fe80::a00:27ff:fef8:42a7  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:f8:42:a7  txqueuelen 1000  (Ethernet)
        RX packets 30769  bytes 24591786 (23.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 28378  bytes 3142544 (2.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 4068  bytes 175660 (171.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4068  bytes 175660 (171.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

}}}
{{{
root@kali:~# nikto -h 10.0.2.4
- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP:          10.0.2.4
+ Target Hostname:    10.0.2.4
+ Target Port:        80
+ Start Time:         2019-03-01 08:21:58 (GMT-5)
---------------------------------------------------------------------------
+ Server: Apache
+ Server leaks inodes via ETags, header found with file /, fields: 0xd3 0x54c550ee22d56 
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined. This header can hint to the user agent to protect against some forms of XSS
+ The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ OSVDB-3268: /games/: Directory indexing found.
+ Entry '/games/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/dropbox/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/contact/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/search/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/archive/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/wp-admin/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/wp-content/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/wp-includes/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/comment-page-/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/trackback/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/xmlrpc.php' in robots.txt returned a non-forbidden or redirect HTTP code (301)
+ Entry '/blackhole/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/mint/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ Entry '/feed/' in robots.txt returned a non-forbidden or redirect HTTP code (200)
+ "robots.txt" contains 26 entries which should be manually viewed.
+ Allowed HTTP Methods: GET, HEAD, POST, OPTIONS 
+ OSVDB-3092: /archive/: This might be interesting...
+ OSVDB-3092: /support/: This might be interesting...
+ OSVDB-3092: /manual/: Web server manual found.
+ OSVDB-3268: /manual/images/: Directory indexing found.
+ OSVDB-3233: /icons/README: Apache default file found.
+ /wp-admin/: Admin login page/section found.
+ /phpmyadmin/: phpMyAdmin directory found
+ 7563 requests: 0 error(s) and 28 item(s) reported on remote host
+ End Time:           2019-03-01 08:22:39 (GMT-5) (41 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested
root@kali:~# 
}}}
{{{
root@kali:~# dirb http://10.0.2.4

-----------------
DIRB v2.22    
By The Dark Raver
-----------------

START_TIME: Fri Mar  1 08:28:13 2019
URL_BASE: http://10.0.2.4/
WORDLIST_FILES: /usr/share/dirb/wordlists/common.txt

-----------------

GENERATED WORDS: 4612                                                          

---- Scanning URL: http://10.0.2.4/ ----
==> DIRECTORY: http://10.0.2.4/archive/                                                             
==> DIRECTORY: http://10.0.2.4/blog/                                                                
==> DIRECTORY: http://10.0.2.4/contact/                                                             
==> DIRECTORY: http://10.0.2.4/control/                                                             
==> DIRECTORY: http://10.0.2.4/feed/                                                                
==> DIRECTORY: http://10.0.2.4/games/                                                               
+ http://10.0.2.4/index.html (CODE:200|SIZE:211)                                                    
==> DIRECTORY: http://10.0.2.4/manual/                                                              
==> DIRECTORY: http://10.0.2.4/mint/                                                                
==> DIRECTORY: http://10.0.2.4/phpmyadmin/                                                          
==> DIRECTORY: http://10.0.2.4/plugins/                                                             
+ http://10.0.2.4/robots.txt (CODE:200|SIZE:695)                                                    
==> DIRECTORY: http://10.0.2.4/search/                                                              
+ http://10.0.2.4/server-status (CODE:403|SIZE:222)                                                 
==> DIRECTORY: http://10.0.2.4/support/                                                             
==> DIRECTORY: http://10.0.2.4/tag/                                                                 
==> DIRECTORY: http://10.0.2.4/themes/                                                              
==> DIRECTORY: http://10.0.2.4/trackback/                                                           
==> DIRECTORY: http://10.0.2.4/wp-admin/                                                            
==> DIRECTORY: http://10.0.2.4/wp-content/                                                          
==> DIRECTORY: http://10.0.2.4/wp-includes/                                                         
==> DIRECTORY: http://10.0.2.4/xmlrpc.php/                                                          
                                                                                                    
---- Entering directory: http://10.0.2.4/archive/ ----
==> DIRECTORY: http://10.0.2.4/archive/admin/                                                       
+ http://10.0.2.4/archive/index.php (CODE:200|SIZE:0)                                               
                                                                                                    
---- Entering directory: http://10.0.2.4/blog/ ----
==> DIRECTORY: http://10.0.2.4/blog/admin/                                                          
+ http://10.0.2.4/blog/index.php (CODE:200|SIZE:0)                                                  
                                                                                                    
---- Entering directory: http://10.0.2.4/contact/ ----
==> DIRECTORY: http://10.0.2.4/contact/admin/                                                       
+ http://10.0.2.4/contact/index.php (CODE:200|SIZE:0)                                               
                                                                                                    
---- Entering directory: http://10.0.2.4/control/ ----
==> DIRECTORY: http://10.0.2.4/control/css/                                                         
==> DIRECTORY: http://10.0.2.4/control/fonts/                                                       
+ http://10.0.2.4/control/index.html (CODE:200|SIZE:6814)                                           
==> DIRECTORY: http://10.0.2.4/control/js/                                                          
+ http://10.0.2.4/control/LICENSE (CODE:200|SIZE:11336)                                             
                                                                                                    
---- Entering directory: http://10.0.2.4/feed/ ----
==> DIRECTORY: http://10.0.2.4/feed/admin/                                                          
+ http://10.0.2.4/feed/index.php (CODE:200|SIZE:0)                                                  
                                                                                                    
---- Entering directory: http://10.0.2.4/games/ ----
(!) WARNING: Directory IS LISTABLE. No need to scan it.                        
    (Use mode '-w' if you want to scan it anyway)
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ ----
==> DIRECTORY: http://10.0.2.4/manual/da/                                                           
==> DIRECTORY: http://10.0.2.4/manual/de/                                                           
==> DIRECTORY: http://10.0.2.4/manual/en/                                                           
==> DIRECTORY: http://10.0.2.4/manual/es/                                                           
==> DIRECTORY: http://10.0.2.4/manual/fr/                                                           
==> DIRECTORY: http://10.0.2.4/manual/images/                                                       
+ http://10.0.2.4/manual/index.html (CODE:200|SIZE:626)                                             
==> DIRECTORY: http://10.0.2.4/manual/ja/                                                           
==> DIRECTORY: http://10.0.2.4/manual/ko/                                                           
==> DIRECTORY: http://10.0.2.4/manual/style/                                                        
==> DIRECTORY: http://10.0.2.4/manual/tr/                                                           
==> DIRECTORY: http://10.0.2.4/manual/zh-cn/                                                        
                                                                                                    
---- Entering directory: http://10.0.2.4/mint/ ----
==> DIRECTORY: http://10.0.2.4/mint/admin/                                                          
+ http://10.0.2.4/mint/index.php (CODE:200|SIZE:0)                                                  
                                                                                                    
---- Entering directory: http://10.0.2.4/phpmyadmin/ ----
+ http://10.0.2.4/phpmyadmin/index.html (CODE:200|SIZE:154472)                                      
                                                                                                    
---- Entering directory: http://10.0.2.4/plugins/ ----
==> DIRECTORY: http://10.0.2.4/plugins/admin/                                                       
+ http://10.0.2.4/plugins/index.php (CODE:200|SIZE:0)                                               
                                                                                                    
---- Entering directory: http://10.0.2.4/search/ ----
==> DIRECTORY: http://10.0.2.4/search/admin/                                                        
+ http://10.0.2.4/search/index.php (CODE:200|SIZE:0)                                                
                                                                                                    
---- Entering directory: http://10.0.2.4/support/ ----
==> DIRECTORY: http://10.0.2.4/support/admin/                                                       
+ http://10.0.2.4/support/index.php (CODE:200|SIZE:0)                                               
                                                                                                    
---- Entering directory: http://10.0.2.4/tag/ ----
==> DIRECTORY: http://10.0.2.4/tag/admin/                                                           
+ http://10.0.2.4/tag/index.php (CODE:200|SIZE:0)                                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/themes/ ----
==> DIRECTORY: http://10.0.2.4/themes/admin/                                                        
+ http://10.0.2.4/themes/index.php (CODE:200|SIZE:0)                                                
                                                                                                    
---- Entering directory: http://10.0.2.4/trackback/ ----
==> DIRECTORY: http://10.0.2.4/trackback/admin/                                                     
+ http://10.0.2.4/trackback/index.php (CODE:200|SIZE:0)                                             
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-admin/ ----
==> DIRECTORY: http://10.0.2.4/wp-admin/admin/                                                      
+ http://10.0.2.4/wp-admin/index.php (CODE:200|SIZE:0)                                              
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-content/ ----
==> DIRECTORY: http://10.0.2.4/wp-content/admin/                                                    
+ http://10.0.2.4/wp-content/index.php (CODE:200|SIZE:0)                                            
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-includes/ ----
==> DIRECTORY: http://10.0.2.4/wp-includes/admin/                                                   
+ http://10.0.2.4/wp-includes/index.php (CODE:200|SIZE:0)                                           
                                                                                                    
---- Entering directory: http://10.0.2.4/xmlrpc.php/ ----
==> DIRECTORY: http://10.0.2.4/xmlrpc.php/admin/                                                    
+ http://10.0.2.4/xmlrpc.php/index.php (CODE:200|SIZE:0)                                            
                                                                                                    
---- Entering directory: http://10.0.2.4/archive/admin/ ----
==> DIRECTORY: http://10.0.2.4/archive/admin/archive/                                               
+ http://10.0.2.4/archive/admin/index.php (CODE:200|SIZE:0)                                         
                                                                                                    
---- Entering directory: http://10.0.2.4/blog/admin/ ----
==> DIRECTORY: http://10.0.2.4/blog/admin/blog/                                                     
+ http://10.0.2.4/blog/admin/index.php (CODE:200|SIZE:0)                                            
                                                                                                    
---- Entering directory: http://10.0.2.4/contact/admin/ ----
==> DIRECTORY: http://10.0.2.4/contact/admin/contact/                                               
+ http://10.0.2.4/contact/admin/index.php (CODE:200|SIZE:0)                                         
                                                                                                    
---- Entering directory: http://10.0.2.4/control/css/ ----
(!) WARNING: Directory IS LISTABLE. No need to scan it.                        
    (Use mode '-w' if you want to scan it anyway)
                                                                                                    
---- Entering directory: http://10.0.2.4/control/fonts/ ----
(!) WARNING: Directory IS LISTABLE. No need to scan it.                        
    (Use mode '-w' if you want to scan it anyway)
                                                                                                    
---- Entering directory: http://10.0.2.4/control/js/ ----
(!) WARNING: Directory IS LISTABLE. No need to scan it.                        
    (Use mode '-w' if you want to scan it anyway)
                                                                                                    
---- Entering directory: http://10.0.2.4/feed/admin/ ----
==> DIRECTORY: http://10.0.2.4/feed/admin/feed/                                                     
+ http://10.0.2.4/feed/admin/index.php (CODE:200|SIZE:0)                                            
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/da/ ----
==> DIRECTORY: http://10.0.2.4/manual/da/developer/                                                 
==> DIRECTORY: http://10.0.2.4/manual/da/faq/                                                       
==> DIRECTORY: http://10.0.2.4/manual/da/howto/                                                     
+ http://10.0.2.4/manual/da/index.html (CODE:200|SIZE:9041)                                         
==> DIRECTORY: http://10.0.2.4/manual/da/misc/                                                      
==> DIRECTORY: http://10.0.2.4/manual/da/mod/                                                       
==> DIRECTORY: http://10.0.2.4/manual/da/programs/                                                  
==> DIRECTORY: http://10.0.2.4/manual/da/ssl/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/de/ ----
==> DIRECTORY: http://10.0.2.4/manual/de/developer/                                                 
==> DIRECTORY: http://10.0.2.4/manual/de/faq/                                                       
==> DIRECTORY: http://10.0.2.4/manual/de/howto/                                                     
+ http://10.0.2.4/manual/de/index.html (CODE:200|SIZE:9290)                                         
==> DIRECTORY: http://10.0.2.4/manual/de/misc/                                                      
==> DIRECTORY: http://10.0.2.4/manual/de/mod/                                                       
==> DIRECTORY: http://10.0.2.4/manual/de/programs/                                                  
==> DIRECTORY: http://10.0.2.4/manual/de/ssl/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/en/ ----
==> DIRECTORY: http://10.0.2.4/manual/en/developer/                                                 
==> DIRECTORY: http://10.0.2.4/manual/en/faq/                                                       
==> DIRECTORY: http://10.0.2.4/manual/en/howto/                                                     
+ http://10.0.2.4/manual/en/index.html (CODE:200|SIZE:9206)                                         
==> DIRECTORY: http://10.0.2.4/manual/en/misc/                                                      
==> DIRECTORY: http://10.0.2.4/manual/en/mod/                                                       
==> DIRECTORY: http://10.0.2.4/manual/en/programs/                                                  
==> DIRECTORY: http://10.0.2.4/manual/en/ssl/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/es/ ----
==> DIRECTORY: http://10.0.2.4/manual/es/developer/                                                 
==> DIRECTORY: http://10.0.2.4/manual/es/faq/                                                       
==> DIRECTORY: http://10.0.2.4/manual/es/howto/                                                     
+ http://10.0.2.4/manual/es/index.html (CODE:200|SIZE:9255)                                         
==> DIRECTORY: http://10.0.2.4/manual/es/misc/                                                      
==> DIRECTORY: http://10.0.2.4/manual/es/mod/                                                       
==> DIRECTORY: http://10.0.2.4/manual/es/programs/                                                  
==> DIRECTORY: http://10.0.2.4/manual/es/ssl/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/fr/ ----
==> DIRECTORY: http://10.0.2.4/manual/fr/developer/                                                 
==> DIRECTORY: http://10.0.2.4/manual/fr/faq/                                                       
==> DIRECTORY: http://10.0.2.4/manual/fr/howto/                                                     
+ http://10.0.2.4/manual/fr/index.html (CODE:200|SIZE:9479)                                         
==> DIRECTORY: http://10.0.2.4/manual/fr/misc/                                                      
==> DIRECTORY: http://10.0.2.4/manual/fr/mod/                                                       
==> DIRECTORY: http://10.0.2.4/manual/fr/programs/                                                  
==> DIRECTORY: http://10.0.2.4/manual/fr/ssl/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/images/ ----
(!) WARNING: Directory IS LISTABLE. No need to scan it.                        
    (Use mode '-w' if you want to scan it anyway)
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ja/ ----
==> DIRECTORY: http://10.0.2.4/manual/ja/developer/                                                 
==> DIRECTORY: http://10.0.2.4/manual/ja/faq/                                                       
==> DIRECTORY: http://10.0.2.4/manual/ja/howto/                                                     
+ http://10.0.2.4/manual/ja/index.html (CODE:200|SIZE:9649)                                         
==> DIRECTORY: http://10.0.2.4/manual/ja/misc/                                                      
==> DIRECTORY: http://10.0.2.4/manual/ja/mod/                                                       
==> DIRECTORY: http://10.0.2.4/manual/ja/programs/                                                  
==> DIRECTORY: http://10.0.2.4/manual/ja/ssl/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ko/ ----
==> DIRECTORY: http://10.0.2.4/manual/ko/developer/                                                 
==> DIRECTORY: http://10.0.2.4/manual/ko/faq/                                                       
==> DIRECTORY: http://10.0.2.4/manual/ko/howto/                                                     
+ http://10.0.2.4/manual/ko/index.html (CODE:200|SIZE:8513)                                         
==> DIRECTORY: http://10.0.2.4/manual/ko/misc/                                                      
==> DIRECTORY: http://10.0.2.4/manual/ko/mod/                                                       
==> DIRECTORY: http://10.0.2.4/manual/ko/programs/                                                  
==> DIRECTORY: http://10.0.2.4/manual/ko/ssl/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/style/ ----
(!) WARNING: Directory IS LISTABLE. No need to scan it.                        
    (Use mode '-w' if you want to scan it anyway)
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/tr/ ----
==> DIRECTORY: http://10.0.2.4/manual/tr/developer/                                                 
==> DIRECTORY: http://10.0.2.4/manual/tr/faq/                                                       
==> DIRECTORY: http://10.0.2.4/manual/tr/howto/                                                     
+ http://10.0.2.4/manual/tr/index.html (CODE:200|SIZE:9416)                                         
==> DIRECTORY: http://10.0.2.4/manual/tr/misc/                                                      
==> DIRECTORY: http://10.0.2.4/manual/tr/mod/                                                       
==> DIRECTORY: http://10.0.2.4/manual/tr/programs/                                                  
==> DIRECTORY: http://10.0.2.4/manual/tr/ssl/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/zh-cn/ ----
==> DIRECTORY: http://10.0.2.4/manual/zh-cn/developer/                                              
==> DIRECTORY: http://10.0.2.4/manual/zh-cn/faq/                                                    
==> DIRECTORY: http://10.0.2.4/manual/zh-cn/howto/                                                  
+ http://10.0.2.4/manual/zh-cn/index.html (CODE:200|SIZE:8884)                                      
==> DIRECTORY: http://10.0.2.4/manual/zh-cn/misc/                                                   
==> DIRECTORY: http://10.0.2.4/manual/zh-cn/mod/                                                    
==> DIRECTORY: http://10.0.2.4/manual/zh-cn/programs/                                               
==> DIRECTORY: http://10.0.2.4/manual/zh-cn/ssl/                                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/mint/admin/ ----
+ http://10.0.2.4/mint/admin/index.php (CODE:200|SIZE:0)                                            
==> DIRECTORY: http://10.0.2.4/mint/admin/mint/                                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/plugins/admin/ ----
+ http://10.0.2.4/plugins/admin/index.php (CODE:200|SIZE:0)                                         
==> DIRECTORY: http://10.0.2.4/plugins/admin/plugins/                                               
                                                                                                    
---- Entering directory: http://10.0.2.4/search/admin/ ----
+ http://10.0.2.4/search/admin/index.php (CODE:200|SIZE:0)                                          
==> DIRECTORY: http://10.0.2.4/search/admin/search/                                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/support/admin/ ----
+ http://10.0.2.4/support/admin/index.php (CODE:200|SIZE:0)                                         
==> DIRECTORY: http://10.0.2.4/support/admin/support/                                               
                                                                                                    
---- Entering directory: http://10.0.2.4/tag/admin/ ----
+ http://10.0.2.4/tag/admin/index.php (CODE:200|SIZE:0)                                             
==> DIRECTORY: http://10.0.2.4/tag/admin/tag/                                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/themes/admin/ ----
+ http://10.0.2.4/themes/admin/index.php (CODE:200|SIZE:0)                                          
==> DIRECTORY: http://10.0.2.4/themes/admin/themes/                                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/trackback/admin/ ----
+ http://10.0.2.4/trackback/admin/index.php (CODE:200|SIZE:0)                                       
==> DIRECTORY: http://10.0.2.4/trackback/admin/trackback/                                           
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-admin/admin/ ----
+ http://10.0.2.4/wp-admin/admin/index.php (CODE:200|SIZE:0)                                        
==> DIRECTORY: http://10.0.2.4/wp-admin/admin/wp-admin/                                             
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-content/admin/ ----
+ http://10.0.2.4/wp-content/admin/index.php (CODE:200|SIZE:0)                                      
==> DIRECTORY: http://10.0.2.4/wp-content/admin/wp-content/                                         
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-includes/admin/ ----
+ http://10.0.2.4/wp-includes/admin/index.php (CODE:200|SIZE:0)                                     
==> DIRECTORY: http://10.0.2.4/wp-includes/admin/wp-includes/                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/xmlrpc.php/admin/ ----
+ http://10.0.2.4/xmlrpc.php/admin/index.php (CODE:200|SIZE:0)                                      
==> DIRECTORY: http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/                                         
                                                                                                    
---- Entering directory: http://10.0.2.4/archive/admin/archive/ ----
==> DIRECTORY: http://10.0.2.4/archive/admin/archive/1/                                             
+ http://10.0.2.4/archive/admin/archive/index.php (CODE:200|SIZE:0)                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/blog/admin/blog/ ----
==> DIRECTORY: http://10.0.2.4/blog/admin/blog/1/                                                   
+ http://10.0.2.4/blog/admin/blog/index.php (CODE:200|SIZE:0)                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/contact/admin/contact/ ----
==> DIRECTORY: http://10.0.2.4/contact/admin/contact/1/                                             
+ http://10.0.2.4/contact/admin/contact/index.php (CODE:200|SIZE:0)                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/feed/admin/feed/ ----
==> DIRECTORY: http://10.0.2.4/feed/admin/feed/1/                                                   
+ http://10.0.2.4/feed/admin/feed/index.php (CODE:200|SIZE:0)                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/da/developer/ ----
+ http://10.0.2.4/manual/da/developer/index.html (CODE:200|SIZE:5892)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/da/faq/ ----
+ http://10.0.2.4/manual/da/faq/index.html (CODE:200|SIZE:3602)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/da/howto/ ----
+ http://10.0.2.4/manual/da/howto/index.html (CODE:200|SIZE:6962)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/da/misc/ ----
+ http://10.0.2.4/manual/da/misc/index.html (CODE:200|SIZE:5106)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/da/mod/ ----
+ http://10.0.2.4/manual/da/mod/index.html (CODE:200|SIZE:22377)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/da/programs/ ----
+ http://10.0.2.4/manual/da/programs/index.html (CODE:200|SIZE:6897)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/da/ssl/ ----
+ http://10.0.2.4/manual/da/ssl/index.html (CODE:200|SIZE:5049)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/de/developer/ ----
+ http://10.0.2.4/manual/de/developer/index.html (CODE:200|SIZE:5892)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/de/faq/ ----
+ http://10.0.2.4/manual/de/faq/index.html (CODE:200|SIZE:3602)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/de/howto/ ----
+ http://10.0.2.4/manual/de/howto/index.html (CODE:200|SIZE:6962)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/de/misc/ ----
+ http://10.0.2.4/manual/de/misc/index.html (CODE:200|SIZE:5106)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/de/mod/ ----
+ http://10.0.2.4/manual/de/mod/index.html (CODE:200|SIZE:22569)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/de/programs/ ----
+ http://10.0.2.4/manual/de/programs/index.html (CODE:200|SIZE:6897)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/de/ssl/ ----
+ http://10.0.2.4/manual/de/ssl/index.html (CODE:200|SIZE:5049)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/en/developer/ ----
+ http://10.0.2.4/manual/en/developer/index.html (CODE:200|SIZE:5892)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/en/faq/ ----
+ http://10.0.2.4/manual/en/faq/index.html (CODE:200|SIZE:3602)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/en/howto/ ----
+ http://10.0.2.4/manual/en/howto/index.html (CODE:200|SIZE:6962)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/en/misc/ ----
+ http://10.0.2.4/manual/en/misc/index.html (CODE:200|SIZE:5106)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/en/mod/ ----
+ http://10.0.2.4/manual/en/mod/index.html (CODE:200|SIZE:22377)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/en/programs/ ----
+ http://10.0.2.4/manual/en/programs/index.html (CODE:200|SIZE:6897)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/en/ssl/ ----
+ http://10.0.2.4/manual/en/ssl/index.html (CODE:200|SIZE:5049)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/es/developer/ ----
+ http://10.0.2.4/manual/es/developer/index.html (CODE:200|SIZE:5892)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/es/faq/ ----
+ http://10.0.2.4/manual/es/faq/index.html (CODE:200|SIZE:3602)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/es/howto/ ----
+ http://10.0.2.4/manual/es/howto/index.html (CODE:200|SIZE:6962)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/es/misc/ ----
+ http://10.0.2.4/manual/es/misc/index.html (CODE:200|SIZE:5106)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/es/mod/ ----
+ http://10.0.2.4/manual/es/mod/index.html (CODE:200|SIZE:22752)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/es/programs/ ----
+ http://10.0.2.4/manual/es/programs/index.html (CODE:200|SIZE:6298)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/es/ssl/ ----
+ http://10.0.2.4/manual/es/ssl/index.html (CODE:200|SIZE:5049)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/fr/developer/ ----
+ http://10.0.2.4/manual/fr/developer/index.html (CODE:200|SIZE:5892)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/fr/faq/ ----
+ http://10.0.2.4/manual/fr/faq/index.html (CODE:200|SIZE:3604)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/fr/howto/ ----
+ http://10.0.2.4/manual/fr/howto/index.html (CODE:200|SIZE:7136)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/fr/misc/ ----
+ http://10.0.2.4/manual/fr/misc/index.html (CODE:200|SIZE:5407)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/fr/mod/ ----
+ http://10.0.2.4/manual/fr/mod/index.html (CODE:200|SIZE:24329)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/fr/programs/ ----
+ http://10.0.2.4/manual/fr/programs/index.html (CODE:200|SIZE:7185)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/fr/ssl/ ----
+ http://10.0.2.4/manual/fr/ssl/index.html (CODE:200|SIZE:5191)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ja/developer/ ----
+ http://10.0.2.4/manual/ja/developer/index.html (CODE:200|SIZE:5892)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ja/faq/ ----
+ http://10.0.2.4/manual/ja/faq/index.html (CODE:200|SIZE:3602)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ja/howto/ ----
+ http://10.0.2.4/manual/ja/howto/index.html (CODE:200|SIZE:7723)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ja/misc/ ----
+ http://10.0.2.4/manual/ja/misc/index.html (CODE:200|SIZE:5106)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ja/mod/ ----
+ http://10.0.2.4/manual/ja/mod/index.html (CODE:200|SIZE:23684)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ja/programs/ ----
+ http://10.0.2.4/manual/ja/programs/index.html (CODE:200|SIZE:6897)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ja/ssl/ ----
+ http://10.0.2.4/manual/ja/ssl/index.html (CODE:200|SIZE:5274)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ko/developer/ ----
+ http://10.0.2.4/manual/ko/developer/index.html (CODE:200|SIZE:5892)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ko/faq/ ----
+ http://10.0.2.4/manual/ko/faq/index.html (CODE:200|SIZE:3602)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ko/howto/ ----
+ http://10.0.2.4/manual/ko/howto/index.html (CODE:200|SIZE:6373)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ko/misc/ ----
+ http://10.0.2.4/manual/ko/misc/index.html (CODE:200|SIZE:5197)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ko/mod/ ----
+ http://10.0.2.4/manual/ko/mod/index.html (CODE:200|SIZE:21813)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ko/programs/ ----
+ http://10.0.2.4/manual/ko/programs/index.html (CODE:200|SIZE:5773)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/ko/ssl/ ----
+ http://10.0.2.4/manual/ko/ssl/index.html (CODE:200|SIZE:5049)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/tr/developer/ ----
+ http://10.0.2.4/manual/tr/developer/index.html (CODE:200|SIZE:5892)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/tr/faq/ ----
+ http://10.0.2.4/manual/tr/faq/index.html (CODE:200|SIZE:3612)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/tr/howto/ ----
+ http://10.0.2.4/manual/tr/howto/index.html (CODE:200|SIZE:6962)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/tr/misc/ ----
+ http://10.0.2.4/manual/tr/misc/index.html (CODE:200|SIZE:5339)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/tr/mod/ ----
+ http://10.0.2.4/manual/tr/mod/index.html (CODE:200|SIZE:22660)                                    
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/tr/programs/ ----
+ http://10.0.2.4/manual/tr/programs/index.html (CODE:200|SIZE:7405)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/tr/ssl/ ----
+ http://10.0.2.4/manual/tr/ssl/index.html (CODE:200|SIZE:5196)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/zh-cn/developer/ ----
+ http://10.0.2.4/manual/zh-cn/developer/index.html (CODE:200|SIZE:5995)                            
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/zh-cn/faq/ ----
+ http://10.0.2.4/manual/zh-cn/faq/index.html (CODE:200|SIZE:3571)                                  
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/zh-cn/howto/ ----
+ http://10.0.2.4/manual/zh-cn/howto/index.html (CODE:200|SIZE:6566)                                
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/zh-cn/misc/ ----
+ http://10.0.2.4/manual/zh-cn/misc/index.html (CODE:200|SIZE:4807)                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/zh-cn/mod/ ----
+ http://10.0.2.4/manual/zh-cn/mod/index.html (CODE:200|SIZE:22261)                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/zh-cn/programs/ ----
+ http://10.0.2.4/manual/zh-cn/programs/index.html (CODE:200|SIZE:6833)                             
                                                                                                    
---- Entering directory: http://10.0.2.4/manual/zh-cn/ssl/ ----
+ http://10.0.2.4/manual/zh-cn/ssl/index.html (CODE:200|SIZE:5042)                                  
                                                                                                    
---- Entering directory: http://10.0.2.4/mint/admin/mint/ ----
==> DIRECTORY: http://10.0.2.4/mint/admin/mint/1/                                                   
+ http://10.0.2.4/mint/admin/mint/index.php (CODE:200|SIZE:0)                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/plugins/admin/plugins/ ----
==> DIRECTORY: http://10.0.2.4/plugins/admin/plugins/1/                                             
+ http://10.0.2.4/plugins/admin/plugins/index.php (CODE:200|SIZE:0)                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/search/admin/search/ ----
==> DIRECTORY: http://10.0.2.4/search/admin/search/1/                                               
+ http://10.0.2.4/search/admin/search/index.php (CODE:200|SIZE:0)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/support/admin/support/ ----
==> DIRECTORY: http://10.0.2.4/support/admin/support/1/                                             
+ http://10.0.2.4/support/admin/support/index.php (CODE:200|SIZE:0)                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/tag/admin/tag/ ----
==> DIRECTORY: http://10.0.2.4/tag/admin/tag/1/                                                     
+ http://10.0.2.4/tag/admin/tag/index.php (CODE:200|SIZE:0)                                         
                                                                                                    
---- Entering directory: http://10.0.2.4/themes/admin/themes/ ----
==> DIRECTORY: http://10.0.2.4/themes/admin/themes/1/                                               
+ http://10.0.2.4/themes/admin/themes/index.php (CODE:200|SIZE:0)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/trackback/admin/trackback/ ----
==> DIRECTORY: http://10.0.2.4/trackback/admin/trackback/1/                                         
+ http://10.0.2.4/trackback/admin/trackback/index.php (CODE:200|SIZE:0)                             
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-admin/admin/wp-admin/ ----
==> DIRECTORY: http://10.0.2.4/wp-admin/admin/wp-admin/1/                                           
+ http://10.0.2.4/wp-admin/admin/wp-admin/index.php (CODE:200|SIZE:0)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-content/admin/wp-content/ ----
==> DIRECTORY: http://10.0.2.4/wp-content/admin/wp-content/1/                                       
+ http://10.0.2.4/wp-content/admin/wp-content/index.php (CODE:200|SIZE:0)                           
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-includes/admin/wp-includes/ ----
==> DIRECTORY: http://10.0.2.4/wp-includes/admin/wp-includes/1/                                     
+ http://10.0.2.4/wp-includes/admin/wp-includes/index.php (CODE:200|SIZE:0)                         
                                                                                                    
---- Entering directory: http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/ ----
==> DIRECTORY: http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/1/                                       
+ http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/index.php (CODE:200|SIZE:0)                           
                                                                                                    
---- Entering directory: http://10.0.2.4/archive/admin/archive/1/ ----
==> DIRECTORY: http://10.0.2.4/archive/admin/archive/1/2/                                           
+ http://10.0.2.4/archive/admin/archive/1/index.php (CODE:200|SIZE:0)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/blog/admin/blog/1/ ----
==> DIRECTORY: http://10.0.2.4/blog/admin/blog/1/2/                                                 
+ http://10.0.2.4/blog/admin/blog/1/index.php (CODE:200|SIZE:0)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/contact/admin/contact/1/ ----
==> DIRECTORY: http://10.0.2.4/contact/admin/contact/1/2/                                           
+ http://10.0.2.4/contact/admin/contact/1/index.php (CODE:200|SIZE:0)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/feed/admin/feed/1/ ----
==> DIRECTORY: http://10.0.2.4/feed/admin/feed/1/2/                                                 
+ http://10.0.2.4/feed/admin/feed/1/index.php (CODE:200|SIZE:0)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/mint/admin/mint/1/ ----
==> DIRECTORY: http://10.0.2.4/mint/admin/mint/1/2/                                                 
+ http://10.0.2.4/mint/admin/mint/1/index.php (CODE:200|SIZE:0)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/plugins/admin/plugins/1/ ----
==> DIRECTORY: http://10.0.2.4/plugins/admin/plugins/1/2/                                           
+ http://10.0.2.4/plugins/admin/plugins/1/index.php (CODE:200|SIZE:0)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/search/admin/search/1/ ----
==> DIRECTORY: http://10.0.2.4/search/admin/search/1/2/                                             
+ http://10.0.2.4/search/admin/search/1/index.php (CODE:200|SIZE:0)                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/support/admin/support/1/ ----
==> DIRECTORY: http://10.0.2.4/support/admin/support/1/2/                                           
+ http://10.0.2.4/support/admin/support/1/index.php (CODE:200|SIZE:0)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/tag/admin/tag/1/ ----
==> DIRECTORY: http://10.0.2.4/tag/admin/tag/1/2/                                                   
+ http://10.0.2.4/tag/admin/tag/1/index.php (CODE:200|SIZE:0)                                       
                                                                                                    
---- Entering directory: http://10.0.2.4/themes/admin/themes/1/ ----
==> DIRECTORY: http://10.0.2.4/themes/admin/themes/1/2/                                             
+ http://10.0.2.4/themes/admin/themes/1/index.php (CODE:200|SIZE:0)                                 
                                                                                                    
---- Entering directory: http://10.0.2.4/trackback/admin/trackback/1/ ----
==> DIRECTORY: http://10.0.2.4/trackback/admin/trackback/1/2/                                       
+ http://10.0.2.4/trackback/admin/trackback/1/index.php (CODE:200|SIZE:0)                           
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-admin/admin/wp-admin/1/ ----
==> DIRECTORY: http://10.0.2.4/wp-admin/admin/wp-admin/1/2/                                         
+ http://10.0.2.4/wp-admin/admin/wp-admin/1/index.php (CODE:200|SIZE:0)                             
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-content/admin/wp-content/1/ ----
==> DIRECTORY: http://10.0.2.4/wp-content/admin/wp-content/1/2/                                     
+ http://10.0.2.4/wp-content/admin/wp-content/1/index.php (CODE:200|SIZE:0)                         
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-includes/admin/wp-includes/1/ ----
==> DIRECTORY: http://10.0.2.4/wp-includes/admin/wp-includes/1/2/                                   
+ http://10.0.2.4/wp-includes/admin/wp-includes/1/index.php (CODE:200|SIZE:0)                       
                                                                                                    
---- Entering directory: http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/1/ ----
==> DIRECTORY: http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/1/2/                                     
+ http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/1/index.php (CODE:200|SIZE:0)                         
                                                                                                    
---- Entering directory: http://10.0.2.4/archive/admin/archive/1/2/ ----
+ http://10.0.2.4/archive/admin/archive/1/2/index.php (CODE:200|SIZE:0)                             
                                                                                                    
---- Entering directory: http://10.0.2.4/blog/admin/blog/1/2/ ----
+ http://10.0.2.4/blog/admin/blog/1/2/index.php (CODE:200|SIZE:0)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/contact/admin/contact/1/2/ ----
+ http://10.0.2.4/contact/admin/contact/1/2/index.php (CODE:200|SIZE:0)                             
                                                                                                    
---- Entering directory: http://10.0.2.4/feed/admin/feed/1/2/ ----
+ http://10.0.2.4/feed/admin/feed/1/2/index.php (CODE:200|SIZE:0)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/mint/admin/mint/1/2/ ----
+ http://10.0.2.4/mint/admin/mint/1/2/index.php (CODE:200|SIZE:0)                                   
                                                                                                    
---- Entering directory: http://10.0.2.4/plugins/admin/plugins/1/2/ ----
+ http://10.0.2.4/plugins/admin/plugins/1/2/index.php (CODE:200|SIZE:0)                             
                                                                                                    
---- Entering directory: http://10.0.2.4/search/admin/search/1/2/ ----
+ http://10.0.2.4/search/admin/search/1/2/index.php (CODE:200|SIZE:0)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/support/admin/support/1/2/ ----
+ http://10.0.2.4/support/admin/support/1/2/index.php (CODE:200|SIZE:0)                             
                                                                                                    
---- Entering directory: http://10.0.2.4/tag/admin/tag/1/2/ ----
+ http://10.0.2.4/tag/admin/tag/1/2/index.php (CODE:200|SIZE:0)                                     
                                                                                                    
---- Entering directory: http://10.0.2.4/themes/admin/themes/1/2/ ----
+ http://10.0.2.4/themes/admin/themes/1/2/index.php (CODE:200|SIZE:0)                               
                                                                                                    
---- Entering directory: http://10.0.2.4/trackback/admin/trackback/1/2/ ----
+ http://10.0.2.4/trackback/admin/trackback/1/2/index.php (CODE:200|SIZE:0)                         
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-admin/admin/wp-admin/1/2/ ----
+ http://10.0.2.4/wp-admin/admin/wp-admin/1/2/index.php (CODE:200|SIZE:0)                           
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-content/admin/wp-content/1/2/ ----
+ http://10.0.2.4/wp-content/admin/wp-content/1/2/index.php (CODE:200|SIZE:0)                       
                                                                                                    
---- Entering directory: http://10.0.2.4/wp-includes/admin/wp-includes/1/2/ ----
+ http://10.0.2.4/wp-includes/admin/wp-includes/1/2/index.php (CODE:200|SIZE:0)                     
                                                                                                    
---- Entering directory: http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/1/2/ ----
+ http://10.0.2.4/xmlrpc.php/admin/xmlrpc.php/1/2/index.php (CODE:200|SIZE:0)                       
                                                                                                    
-----------------
END_TIME: Fri Mar  1 08:38:00 2019
DOWNLOADED: 696412 - FOUND: 154
root@kali:~# 

}}}
''Pen Testing Webinar''

[[Pen Testing Webinar 2019-2-20|https://www.videohop.com.au/video/wekgv6r69ym]]
[[PTES documentation|https://media.readthedocs.org/pdf/pentest-standard/latest/pentest-standard.pdf]]
[[Framework for ImprovingCritical Infrastructure Cybersecurity|https://nvlpubs.nist.gov/nistpubs/CSWP/NIST.CSWP.04162018.pdf]]


[[virtuabox & Kali Installation|vb_kali]]

https://learn.itmasters.edu.au/mod/forum/discuss.php?d=23461

https://www.cybrary.it/course/kali-linux-fundamentals/

https://learn.itmasters.edu.au/mod/forum/discuss.php?d=23461#p64942


https://www.exploit-db.com/google-hacking-database
https://mxtoolbox.com/


Don't forget OWASP ZAP


Ack -> Syn Ack -> Fin?
its the GTFo Protocol

https://hackertarget.com/nmap-cheatsheet-a-quick-reference-guide/

you can scam a webapp with



nmap -Pn -T4 -A --script http-* <host> 

this would take 17 hours and its very noisy making it efficient is left as an exercise.



enumeration (top 1000 ports)

nmap -Pn -T4 --top 1000 <host>

{{{

Re: VirtualBox and Kali Setup
by Ben Cummings - Monday, 25 February 2019, 1:38 AM
 
Interesting first session, and had some fun playing around 
in Kali Linux for the first time. Just a quick note regarding 
targeting the SSH server on localhost (which may be obvious 
to others), the service is disabled by default. It can be started 
temporarily with sudo systemctl start ssh.socket or permanently 
with sudo systemctl enable ssh.service and 
sudo systemctl start ssh.service. See you all at the next session.

ref: https://learn.itmasters.edu.au/mod/forum/discuss.php?d=23461#p65044
}}}
''dirb''
https://infosecaddicts.com/dirb-is-a-web-content-scanner/
https://null-byte.wonderhowto.com/how-to/hack-like-pro-hack-web-apps-part-7-finding-hidden-objects-with-dirb-0168596/

https://kongwenbin.com/writeup-for-kioptrix-level-1-3-4/

https://linuxhint.com/top-25-best-kali-linux-tools/

https://divyendra.com/blog/hacking-101/540/

https://frsecure.com/blog/pentesting-101-pinpoint-your-targets/
{{{
 Currently scanning: Finished!   |   Screen View: Unique Hosts                 
                                                                               
 12 Captured ARP Req/Rep packets, from 3 hosts.   Total size: 720              
 _____________________________________________________________________________
   IP            At MAC Address     Count     Len  MAC Vendor / Hostname      
 -----------------------------------------------------------------------------
 172.16.16.1     52:54:00:12:35:00      3     180  Unknown vendor              
 172.16.16.2     52:54:00:12:35:00      6     360  Unknown vendor              
 172.16.16.3     08:00:27:fe:bf:6d      3     180  PCS Systemtechnik GmbH  
}}}
{{{
root@kali:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.16.16.4  netmask 255.255.255.0  broadcast 172.16.16.255
        inet6 fe80::a00:27ff:fef8:42a7  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:f8:42:a7  txqueuelen 1000  (Ethernet)
        RX packets 2051  bytes 137709 (134.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7437  bytes 448357 (437.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 20  bytes 1116 (1.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 20  bytes 1116 (1.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


}}}

{{{
root@kali:~# nmap  172.16.16.2
Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-01 06:34 EST
Nmap scan report for 172.16.16.2
Host is up (1.0s latency).
Not shown: 992 closed ports
PORT     STATE SERVICE
25/tcp   open  smtp
110/tcp  open  pop3
135/tcp  open  msrpc
143/tcp  open  imap
445/tcp  open  microsoft-ds
587/tcp  open  submission
2869/tcp open  icslap
7070/tcp open  realserver
MAC Address: 52:54:00:12:35:00 (QEMU virtual NIC)

Nmap done: 1 IP address (1 host up) scanned in 108.47 seconds
}}}
{{{
oot@kali:~# nmap  172.16.16.2 -sV
Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-01 06:40 EST
Nmap scan report for 172.16.16.2
Host is up (1.0s latency).
Not shown: 992 closed ports
PORT     STATE SERVICE         VERSION
25/tcp   open  smtp            hMailServer smtpd
110/tcp  open  pop3            hMailServer pop3d
135/tcp  open  msrpc           Microsoft Windows RPC
143/tcp  open  imap            hMailServer imapd
445/tcp  open  microsoft-ds?
587/tcp  open  smtp            hMailServer smtpd
2869/tcp open  http            Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
7070/tcp open  ssl/realserver?
MAC Address: 52:54:00:12:35:00 (QEMU virtual NIC)
Service Info: Host: DESKTOP-8I4PCB8; OS: Windows; CPE: cpe:/o:microsoft:windows

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 148.72 seconds
root@kali:~# 
}}}
{{{
root@kali:~# nmap  172.16.16.2 -sV -vv
Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-01 06:45 EST
NSE: Loaded 43 scripts for scanning.
Initiating ARP Ping Scan at 06:45
Scanning 172.16.16.2 [1 port]
Completed ARP Ping Scan at 06:45, 0.04s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 06:45
Completed Parallel DNS resolution of 1 host. at 06:45, 0.02s elapsed
Initiating SYN Stealth Scan at 06:45
Scanning 172.16.16.2 [1000 ports]
Discovered open port 110/tcp on 172.16.16.2
Discovered open port 445/tcp on 172.16.16.2
Discovered open port 25/tcp on 172.16.16.2
Discovered open port 587/tcp on 172.16.16.2
Discovered open port 143/tcp on 172.16.16.2
Discovered open port 135/tcp on 172.16.16.2
Increasing send delay for 172.16.16.2 from 0 to 5 due to 64 out of 212 dropped probes since last increase.
Discovered open port 7070/tcp on 172.16.16.2
Discovered open port 2869/tcp on 172.16.16.2
Completed SYN Stealth Scan at 06:47, 107.91s elapsed (1000 total ports)
Initiating Service scan at 06:47
Scanning 8 services on 172.16.16.2
Completed Service scan at 06:47, 21.15s elapsed (8 services on 1 host)
NSE: Script scanning 172.16.16.2.
NSE: Starting runlevel 1 (of 2) scan.
Initiating NSE at 06:47
Completed NSE at 06:47, 10.10s elapsed
NSE: Starting runlevel 2 (of 2) scan.
Initiating NSE at 06:47
Completed NSE at 06:47, 0.05s elapsed
Nmap scan report for 172.16.16.2
Host is up, received arp-response (1.0s latency).
Scanned at 2019-03-01 06:45:32 EST for 140s
Not shown: 992 closed ports
Reason: 992 resets
PORT     STATE SERVICE         REASON          VERSION
25/tcp   open  smtp            syn-ack ttl 255 hMailServer smtpd
110/tcp  open  pop3            syn-ack ttl 255 hMailServer pop3d
135/tcp  open  msrpc           syn-ack ttl 255 Microsoft Windows RPC
143/tcp  open  imap            syn-ack ttl 255 hMailServer imapd
445/tcp  open  microsoft-ds?   syn-ack ttl 255
587/tcp  open  smtp            syn-ack ttl 255 hMailServer smtpd
2869/tcp open  http            syn-ack ttl 255 Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
7070/tcp open  ssl/realserver? syn-ack ttl 255
MAC Address: 52:54:00:12:35:00 (QEMU virtual NIC)
Service Info: Host: DESKTOP-8I4PCB8; OS: Windows; CPE: cpe:/o:microsoft:windows

Read data files from: /usr/bin/../share/nmap
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 141.10 seconds
           Raw packets sent: 1869 (82.220KB) | Rcvd: 1017 (40.700KB)
root@kali:~# 
}}}
{{{
root@kali:~# nmap  172.16.16.2 -sV -O
Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-01 06:49 EST
Nmap scan report for 172.16.16.2
Host is up (0.11s latency).
Not shown: 992 closed ports
PORT     STATE SERVICE         VERSION
25/tcp   open  smtp            hMailServer smtpd
110/tcp  open  pop3            hMailServer pop3d
135/tcp  open  msrpc           Microsoft Windows RPC
143/tcp  open  imap            hMailServer imapd
445/tcp  open  microsoft-ds?
587/tcp  open  smtp            hMailServer smtpd
2869/tcp open  http            Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
7070/tcp open  ssl/realserver?
MAC Address: 52:54:00:12:35:00 (QEMU virtual NIC)
Device type: VoIP phone|firewall|webcam|specialized
Running (JUST GUESSING): Grandstream embedded (91%), FireBrick embedded (87%), Garmin embedded (87%), 2N embedded (87%)
OS CPE: cpe:/h:grandstream:gxp1105 cpe:/h:firebrick:fb2700 cpe:/h:garmin:virb_elite cpe:/h:2n:helios
Aggressive OS guesses: Grandstream GXP1105 VoIP phone (91%), FireBrick FB2700 firewall (87%), Garmin Virb Elite action camera (87%), 2N Helios IP VoIP doorbell (87%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 1 hop
Service Info: Host: DESKTOP-8I4PCB8; OS: Windows; CPE: cpe:/o:microsoft:windows

OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 162.17 seconds
root@kali:~# 
}}}
{{{
root@kali:~# nmap  172.16.16.2 -sV -O -PN
Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-01 06:54 EST
Nmap scan report for 172.16.16.2
Host is up (0.11s latency).
Not shown: 992 closed ports
PORT     STATE SERVICE         VERSION
25/tcp   open  smtp            hMailServer smtpd
110/tcp  open  pop3            hMailServer pop3d
135/tcp  open  msrpc           Microsoft Windows RPC
143/tcp  open  imap            hMailServer imapd
445/tcp  open  microsoft-ds?
587/tcp  open  smtp            hMailServer smtpd
2869/tcp open  http            Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
7070/tcp open  ssl/realserver?
MAC Address: 52:54:00:12:35:00 (QEMU virtual NIC)
Device type: VoIP phone|firewall|webcam|specialized
Running (JUST GUESSING): Grandstream embedded (91%), FireBrick embedded (87%), Garmin embedded (87%), 2N embedded (87%)
OS CPE: cpe:/h:grandstream:gxp1105 cpe:/h:firebrick:fb2700 cpe:/h:garmin:virb_elite cpe:/h:2n:helios
Aggressive OS guesses: Grandstream GXP1105 VoIP phone (91%), FireBrick FB2700 firewall (87%), Garmin Virb Elite action camera (87%), 2N Helios IP VoIP doorbell (87%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 1 hop
Service Info: Host: DESKTOP-8I4PCB8; OS: Windows; CPE: cpe:/o:microsoft:windows

OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 174.70 seconds
root@kali:~# 
}}}
{{{
oot@kali:~# nikto -h http://www.annaviyar.com
- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP:          27.121.67.78
+ Target Hostname:    www.annaviyar.com
+ Target Port:        80
+ Start Time:         2019-03-01 09:42:25 (GMT-5)
---------------------------------------------------------------------------
+ Server: Apache
+ Cookie PHPSESSID created without the httponly flag
+ Retrieved x-powered-by header: PHP/5.6.22
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined. This header can hint to the user agent to protect against some forms of XSS
+ Uncommon header 'link' found, with contents: <http://www.annaviyar.com/wp-json/>; rel="https://api.w.org/"
+ The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ Uncommon header 'x-robots-tag' found, with contents: noindex, follow
+ Entry '/wp-admin/' in robots.txt returned a non-forbidden or redirect HTTP code (302)
+ "robots.txt" contains 2 entries which should be manually viewed.
+ Web Server returns a valid response with junk HTTP methods, this may cause false positives.
+ /webmail/blank.html: IlohaMail 0.8.10 contains an XSS vulnerability. Previous versions contain other non-descript vulnerabilities.
+ /securecontrolpanel/: Web Server Control Panel
+ /webmail/: Web based mail package installed.
+ OSVDB-3233: /mailman/listinfo: Mailman was found on the server.
+ Uncommon header 'x-redirect-by' found, with contents: Yoast SEO
+ OSVDB-2117: /cpanel/: Web-based control panel
+ OSVDB-3092: /home/: This might be interesting...
+ OSVDB-3092: /img-sys/: Default image directory should not allow directory listing.
+ OSVDB-3093: /webmail/lib/emailreader_execute_on_each_page.inc.php: This might be interesting... has been seen in web logs from an unknown scanner.



}}}
https://stackoverflow.com/questions/13075003/session-cookie-without-httponly-flag-set
Javascript Projects
[[Todo list|https://github.com/isaiahnixon/todo-list]]
[[ convert svg to pdf on a web page|https://github.com/mahmudkuet11/SVG-to-PDF]] <== index.html is working but some picture
[[Free postal code validation & lookup for the web.|https://github.com/zipcodes/zipcodes.js]]
https://github.com/taivu/sitemantheme/blob/master/sass/modules/_mixins.scss <== interesting
https://github.com/JoseCage/free-internet-places-angola
[[nteractive menu with CSS3 & jQuery|https://catalin.red/interactive-menu-with-css3-jquery/]]
[[Orman Clark's Vertical Navigation Menu: The CSS3 Version|https://webdesign.tutsplus.com/tutorials/orman-clarks-vertical-navigation-menu-the-css3-version--webdesign-5944]]
[[How to Create a Responsive jQuery Image Grid Gallery|https://www.flashuser.net/responsive-jquery-image-grid-gallery]]
http://blog.karachicorner.com/2012/11/css3-and-jquery-tutorials/


https://stnsvn.com/blog/how-to-learn-css-using-inspect-element-tool
https://developers.google.com/web/tools/chrome-devtools/javascript/

https://onextrapixel.com/10-useful-and-time-saving-javascript-snippets/

https://www.pinterest.com/pin/838725130578941333/
!install yarn
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update
sudo apt install yarn
{{{
<html>
</head><head><title>::- BUDGET - ::</title>

</head>
<body>
<script>
function updateTextInput(val){
   	document.getElementById('textInput').value=val;
	}
</script>	
<form>
  <label for="budget">Budget: </label>
  <input id="budget" type="range" name="budget" min="500"max="10000" onchange="updateTextInput(this.value)";>
  <input type="text" id="textInput">
</form>
</body></html>
}}}
!Javascript Game
''tic-tac-toe''
https://github.com/skylarkJ/tic-tac-toe
https://skylarkj.github.io/tic-tac-toe/

https://codepen.io/tag/tic-tac-toe/

https://blog.eduonix.com/web-programming-tutorials/learn-create-html-tic-tac-toe-game-using-javascript/

!realtime
http://tic-tac-toe-realtime.herokuapp.com/

Article: https://ayushgp.github.io/Tic-Tac-Toe-Socket-IO/


https://github.com/nquocnghia/TicTacToe-multiplayer

https://github.com/caitp/tictactoe.io

https://github.com/Kenec/Realtime-Tic-Tac-Toe

https://scotch.io/tutorials/learn-webrtc-build-a-real-time-tic-tac-toe


https://www.youtube.com/watch?v=hh0iWHGSxAI

https://www.youtube.com/watch?v=_OUs2kuI_Yo
https://sourceforge.net/projects/tictactoewithfriends/




http://www.ntu.edu.sg/home/ehchua/programming/java/JSPByExample.html
https://www.tutorialspoint.com/jsp/jsp_form_processing.htm
http://www.codesuggestions.com/java/insert-an-image-into-mysql-database-using-jsp-page/

https://www.ntchosting.com/encyclopedia/databases/mysql/insert-data-into-table/
https://www.tutorialspoint.com/mysql/mysql-create-tables.htm

!How to setup xmapp to run jsp
https://www.youtube.com/watch?v=VoOtk3ada9c

! Step 1:add java jdk's path to the Path environmental variable.
Control Panel -> System and Security -> System -> Advanced System Settings -> 
      Environment Variables -> Browse through the System variables. 

   You will find a variable named path. 
      Select the variable and Click "EDIT".  Append the path to jdk

!Step 2: Include the servlet and jsp jar files in the CLASSPATH environment variables.

Still having issue:
https://www.crazyengineers.com/threads/how-to-run-jsp-on-xampp.67312/
{{{
1. Download Apache Tomcat addon here.
2. Extract tomcat addon in Xampp server root directory
3. Go to C://xampp/
4. Stop all services of xampp
5. Open shell and relocate all services
6. Enable mod_jk and relocate
7. Start the services
8. In Xampp control panel you will see the tomcat service. Activate it.
9. Click on admin and enter username and password as xampp and xampp
10. There you go! Open tomcat admin!
}}}


!reading
https://www.youtube.com/watch?v=TUV_jPdq7fc <== may be outdated
https://javaranch.com/journal/200510/Journal200510.jsp#a1
https://examples.javacodegeeks.com/enterprise-java/servlet/java-servlet-xampp-tutorial/

https://www.quora.com/What-is-the-function-of-Apache-Tomcat-and-how-do-I-use-it
[[Books on Kali|kali000]]
[[Links |kali001]]
[[Downloads|kali002]]
[[Installation & Setup | kali003]]
[[Tools | kali004]]
Books:

''Penetration Testing - A hands on Introduction to hacking''
''Penetration testing'', or ''pentesting'' (not to be confused with testing ballpoint or fountain pens), involves simulating real attacks to assess the risk associated with potential security breaches. On a pentest (as opposed to a vulnerability assessment), the testers not only discover vulnerabilities that could be used by attackers but also exploit vulnerabilities, where possible, to assess what attackers might gain after a successful exploitation.

https://repo.zenk-security.com/Magazine%20E-book/Penetration%20Testing%20-%20A%20hands-on%20introduction%20to%20Hacking.pdf 

''CYBERSOC TEAM TOOLS:''

Tools for Conducting Penetration Testing

https://www.softwaretestinghelp.com/ethical-hacking-tools/

https://securitytrails.com/blog/top-15-ethical-hacking-tools-used-by-infosec-professionals

https://www.concise-courses.com/hacking-tools/top-ten/

https://www.comparitech.com/blog/information-security/free-pentesting-tools/

https://latesthackingnews.com/2018/08/07/useful-tools-for-ethical-hacking-penetration-testing/

https://fossbytes.com/best-hacking-tools-of-2016-windows-linux-mac-osx/

https://gbhackers.com/hacking-tools-list/

https://github.com/paralax/Awesome-Pentest-1

https://github.com/topics/penetration-testing

https://github.com/unexpectedBy/awesome-pentest-tools

https://github.com/d3k4z/Pentest_tools

https://github.com/ibr2/awesome-pentest

https://latesthackingnews.com/tag/best-github-hacking-tools/

https://libraries.io/github/enaqx/awesome-pentest

https://www.diycode.cc/projects/enaqx/awesome-pentest

https://www.reddit.com/r/Pentesting/comments/9ondj5/a_good_pentesting_tools_list/

https://dzone.com/articles/top-10-free-hacking-tools-for-penetration-testers

https://www.softwaretestingmaterial.com/penetration-testing-tools/

https://hackingvision.com/category/hacking/latest-pentesting-ethical-hacking-tools/

https://ourcodeworld.com/articles/read/665/top-5-best-open-source-penetration-and-security-testing-hacking-linux-operating-systems

https://cybersguards.com/list-of-hacking-tools/

https://githacktools.blogspot.com/
[[Download Kali Linux Images|https://www.kali.org/downloads/]]
A few step 'from last night's session on setting up the Kali environment:

1. Download VirtualBox and Kali (try the OVA version)

VirtualBox:

https://www.virtualbox.org/wiki/Downloads

Kali VirtualBox image page (recommend 64-bit):

https://images.offensive-security.com/virtual-images/kali-linux-2019.1-vbox-amd64.ova

2. Install VirtualBox

3. Set up a NAT Network

While I prepare a recording,  please see the youtube clip below:

https://www.youtube.com/watch?v=X-uBoEW9H2Q

4. Load Kali into VirtualBox

File -> Import Appliance -> Select OVA file

Configure Kali to use the NAT Network you created

Settings -> Network -> Select NAT Network

5. Install the Oracle VirtualBox Extension Pack:

https://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html

6. If keeping this Kali image beyond the course, login, change the password and generate new SSH keys.

Password change command "passwd"

generate new keys "dpkg-reconfigure openssh-server"

7. Try some tools on the localhost

- nmap

- THC Hydra (point it at your SSH server)

8. Load a target machine.

Try DoNotStop (put the machine into the NAT Network before you start it up for the first time)

https://www.vulnhub.com/entry/d0not5top-12,191/

- Configure it for the NAT network

- Use netdiscover to find it's IP address (you can confirm the IP address in the VirtualBox management interface. Settings -> Network -> Advanced)

"netdiscover -r 10.0.2.0/24" - or the subnet you have configured

9. Try some tools on your new target:

- Nikto

- Dirb

- Metasploit
''nmap:''

links: https://medium.com/@infosecsanyam/nmap-cheat-sheet-nmap-scanning-types-scanning-commands-nse-scripts-868a7bd7f692''
[[சின்ன யானை and more Animal Rhymes -Tamil Rhymes for Children - infobells|https://www.youtube.com/watch?v=IXLTkXtUDNU]]
https://youtu.be/8qvHQIJ4Y3k  Peek a Boo Song | +More Nursery Rhymes & Kids Songs - ABCkidTV
https://www.youtube.com/watch?v=hrO3o5pdBr8
https://thevpn.guru/install-freeview-kodi-17-outside-uk/
https://www.matthuisman.nz/2017/08/au-freeview-kodi-add-on.html
https://thevpn.guru/install-freeview-kodi-17-outside-uk/
https://thepihut.com/blogs/raspberry-pi-tutorials/how-to-stream-digital-tv-with-the-raspberry-pi-tv-hat
https://www.reddit.com/r/australia/comments/3760c8/freeview_launches_a_149_box_so_you_can_access/


''Freview-Plus''
https://www.freeview.com.au/freeview-plus
[[How To Make An E-mail Server|https://www.youtube.com/watch?v=K99lmchhy2g]]
[[Apache James Email Server Installation as Windows Service|https://www.youtube.com/watch?v=ztpe7CMwMfs]]
[[Apache James Server Create Domain and User|https://www.youtube.com/watch?v=3VGx4SiO8g4]]
http://projects.students3k.com/student-information-system-project-in-php-mysql-source-code-free-download.html/2
https://projectabstracts.com/20638/web-based-student-information-management-system-using-html-sql.html <==seems to be good.submitted for download


http://nevonprojects.com/web-based-project-ideas-topics/

https://youtu.be/pm9fN51Php4 <== Why C Languge? in tamil
[[Protocal|https://www.slideshare.net/marwanaldulaimy/osi-tcpip-protocol-and-addressing]]
[[MAC unicast multicast |https://www.youtube.com/watch?v=gp8dvLsDl6o]]
[[sending email from php|snd1]]
[[Some links need to verify|snd2]]
!Linux
http://www.psychocats.net/ubuntu/index <== ubuntu related stuff good one
[[Set up SSH server on Ubuntu 16.04|l101]]
[[Installing PDFtk on CentOS/RHEL/Scientific Linux 7|https://www.linuxglobal.com/pdftk-works-on-centos-7/]]
yum localinstall https://www.linuxglobal.com/static/blog/pdftk-2.02-1.el7.x86_64.rpm
-----------------------
htaccess Block Curl/Wget for all but IP
{{{
RewriteCond %{HTTP_USER_AGENT} ^pycurl [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Wget [NC,OR]
}}}
if you want allow your IP
{{{
RewriteCond %{HTTP_USER_AGENT} ^pycurl [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Wget [NC]
RewriteCond %{REMOTE_ADDR} !^1\.2\.3\.4$ 
}}}
----------------------
! Redirect wget to STDOUT
Ref: https://www.joeldare.com/wiki/linux:wget_to_stdout
The following command runs wget and sends the output to STDOUT instead of to a file. Useful for testing a URL's output.

wget -q -O - http://www.example.com/file.html
*wget cheat sheet · GitHub
https://gist.github.com/Dammmien/4af98e05f9c51c2da007cc70d62bf562

https://www.labnol.org/software/wget-command-examples/28750/

-----------------------------------------
 Start/Stop or Enable/Disable firewalld on CentOS 7
https://bytefreaks.net/gnulinux/how-to-startstop-or-enabledisable-firewalld-on-centos-7
--------------------------------------------


https://linuxconfig.org/how-to-install-google-chrome-web-browser-on-ubuntu-18-04-bionic-beaver-linux  <== install chrome in ubuntu

!visualcode
https://code.visualstudio.com/docs/setup/linux
!whatsapp install ubuntu
https://www.youtube.com/watch?v=BQceZmZkcLg
https://askubuntu.com/questions/684415/install-whatsapp-webapp-on-ubuntu
!linux tool
[[linux Tool|lt000]]
://github.com/zfsonlinux/zfs/wiki/Ubuntu-16.04-Root-on-ZFS

https://trac.ffmpeg.org/wiki/Concatenate

https://linuxhint.com/ubuntu-18-04-lts-minimal-install-guide/

https://lubuntu.net/

https://www.howtogeek.com/howto/33552/htg-explains-which-linux-file-system-should-you-choose/
https://www.digitalocean.com/community/tutorials/how-to-set-up-a-samba-share-for-a-small-organization-on-ubuntu-16-04

https://jenkins.io/doc/book/installing/

http://linux-sys-adm.com/how-to-add-second-hdd-additional-disk-drive-in-ubuntu-14-04-linux/

https://www.howtoforge.com/tutorial/ubuntu-lts-minimal-server/

https://www.omgubuntu.co.uk/2018/03/ubuntu-has-made-its-minimal-images-even-more-minimal-just-28mb

http://www.control-escape.com/linux/lx-partition.html

https://www.techradar.com/how-to/computing/how-to-boot-repair-ubuntu-1315203/3

http://www.ntu.edu.sg/home/ehchua/programming/howto/Ubuntu_HowTo.html

http://minimal.linux-bg.org/#home
[[install android emulator in ubuntu 16.04|l001]]
!1 install java .
sudo add-apt-repository ppa:openjdk-r/ppa  
sudo apt-get update   
sudo apt-get install openjdk-7-jdk  

2. ''https://www.linuxhelp.com/how-to-install-android-emulator-in-ubuntu-16-04/''

https://gist.github.com/razorcd/71f376f1edf5ad48eb4d

https://laptop.ninja/how-to-install-and-run-android-apps-on-ubuntu-with-anbox/ <== anbox



http://dasunhegoda.com/installrun-phonegap-ubuntu/797/
https://www.linux.com/learn/installing-android-apps-linux-archon
https://linuxhint.com/android-studio-ubuntu-tutorial/


https://packages.ubuntu.com/xenial/android-emulator

https://askubuntu.com/questions/761127/how-do-i-install-openjdk-7-on-ubuntu-16-04-or-higher

http://dasunhegoda.com/installrun-phonegap-ubuntu/797/
!Set up SSH server on Ubuntu 16.04

''Step 1 – Update repositories.''
{{{
apt-get update
apt-get upgrade
}}}
''Step 2 – Install SSH Server''

{{{
apt-get install openssh-server
}}}

''Basic Configuration''

''Step 3 – After installation I will show how to configure ssh server. Open ssh config file with the following command:''
{{{
vi /etc/ssh/sshd_config
}}}

''Step 4 – If you want to change ssh port you have to find ‘Port’ line and change the number of the port. For example I will change to 22222.''
{{{
Port 22222
}}}

''Step 5 – I will set max login attempts to be 3. After 3 wrong login attempts you will disconect. This is very important for security of your server and this can be used for prevention from brute force attack (see my Theme 4). Add this line bellow Port'':

''MaxAuthTries 3
Step 6 – Allow certain users to login on your server and deny all other users. I will add ‘zimbra’ users because my Zimbra Mail Serve should have access. For more information about Zimbra Mail Server configuration read theme 12. Add the following line at the end of the file and after that save the file /etc/ssh/sshd_config.''

''AllowUsers'' 
''Step 7 – Restart ssh service with the following command:''

{{{
systemctl restart ssh
}}}

''or''

{{{
service ssh restart
}}}

Ref: http://linux-sys-adm.com/ubuntu-16.04-lts-how-to-install-and-configure-ssh/
https://www.airbnb.com.au/rooms/11875596?check_in=2018-12-20&check_out=2018-12-22&adults=1&children=0&infants=0
https://www.google.lk/search?q=%22%5C.%5C$ex-%3EgetMessage%5C(%5C)%5C;%22+%2Bphp&rlz=1C1CHBF_enAU774AU774&tbm=isch&source=iu&ictx=1&fir=FyrOj1bt2vtUsM%253A%252CcYJpC6wlhaEwDM%252C_&usg=AI4_-kRlY0ZXqRL4G6Ik6AC39HRtuF8jHw&sa=X&ved=2ahUKEwjT5e2lz-beAhWBo48KHYYLDgQQ9QEwBnoECAYQCA#imgdii=wULnMMXNTKSuGM:&imgrc=FyrOj1bt2vtUsM:
https://www.android-examples.com/send-insert-edittext-data-online-to-mysql-db-server-in-android/
https://www.thesoftwareguy.in/read-and-write-json-file-with-php-and-mysql/
https://www.freelancer.com/community/articles/using-php-pdo-to-manage-data-in-mysql
https://www.saotn.org/how-to-use-ssl-in-php-data-objects-pdo-mysql/
https://alexwebdevelop.com/pdo-database-connection/
http://www.17educations.com/php/php-pdo-database-connection/
http://www.codingcage.com/2015/03/how-to-use-php-data-object-pdo-tutorial.html
https://slideplayer.com/slide/9669149/
http://biosled.com/index.php/Product/detail/cid/127/lid/283
https://www.aliexpress.com/item/EX-10-USB-Serial-port-512-32-pixel-support-monochrome-dual-color-led-display-sign-Controller/1927545020.html?spm=2114.search0302.3.151.738744799gCyka&ws_ab_test=searchweb0_0,searchweb201602_0_453_454_10618_536_317_537_319_10059_10696_10084_100031_10083_10921_10887_10920_10307_321_10922_322_10924_10065_10068_10103_10884,searchweb201603_0,ppcSwitch_0&algo_pvid=d081b9d9-515f-4cf9-9985-6411baf2fbef&algo_expid=d081b9d9-515f-4cf9-9985-6411baf2fbef-20

[[Ex 10c++|https://www.youtube.com/watch?v=-VavEQ0sK3Q]]
[[How to Program a full color scrolling Led sign P10|https://www.youtube.com/watch?v=LMEtaLJE6Cg]]
[[P10 , iLED - POWER LED Tutorial TF-AU Controller ,P10 LED panel settings ,LED screen .VILNIUS|https://www.youtube.com/watch?v=RNCHZqqWSPA]]
[[www. iLED. lt|https://www.youtube.com/watch?v=RqfCV8iFLbo]]
[[How to program the text into the LED Display message board using PowerLED|https://www.youtube.com/watch?v=CkU4vc44pzk]]
[[LEDShowTW Tutorial - LED Show TW Tutorial - ledshow tw tutorial- led show tw tutorial|https://www.youtube.com/watch?v=Lq9ibgln0VM]]
[[All English Tenses in 30 Minutes - Learn English in Sinhala -Sri Lanka|https://www.youtube.com/watch?v=3UPTF4uAF2U]]
''have been / had been''
[[HAVE BEEN / HAS BEEN / HAD BEEN - How to Use These Forms Correctly (with Examples)|https://www.youtube.com/watch?v=QhSqfzaMuLM]]
{{{
Heads up!
You appear to be making direct edits to your theme 
in the WordPress dashboard. We recommend that 
you don’t! Editing your theme directly could break 
your site and your changes may be lost in future 
updates. If you need to tweak more than your 
theme’s CSS, you might want to try making a 
child theme.

If you decide to go ahead with direct edits anyway, 
use a file manager to create a copy with a new 
name and hang on to the original. That way, you 
can re-enable a functional version if something 
goes wrong
}}}
!Cude Blog: CSS
[[Stylesheet (style.css)|lwp001]]
[[font-awesome.css (css/font-awesome.css||lwp002]]
[[jquery.sidr.light.css (css/jquery.sidr.light.css)|lwp003]]
[[mediascreen.css (css/mediascreen.css)|lwp004]]

!Cude Blog: js
[[Cude Blog: customizer.js (js/customizer.js)|lwp005]]
[[Cude Blog: jquery.sidr.js (js/jquery.sidr.js)|lwp006]]
[[Cude Blog: scripts.js (js/scripts.js)|lwp007]]
   


!convert pdf files to jpg format
{{{
$ sudo apt-get install ghostscript
$ gs -dNOPAUSE -sDEVICE=jpeg -dFirstPage=1 -dLastPage=5 -sOutputFile=output%d.jpg -dJPEGQ=100 -r500 -q intput.pdf -c quit
}}}
[[convert pdf files to jpg format|http://xmodulo.com/convert-pdf-files-to-jpg-format-on-linux.html]]
[[convert png file to jpg|https://www.lifewire.com/convert-linux-command-unix-command-4097060]]
[[Install ssh ubuntu|http://linux-sys-adm.com/ubuntu-16.04-lts-how-to-install-and-configure-ssh/]]
[[How To Install And Remove Software In Ubuntu [Complete Guide]|https://itsfoss.com/remove-install-software-ubuntu/]]

!joint videos
https://stackoverflow.com/questions/7333232/how-to-concatenate-two-mp4-files-using-ffmpeg

!cut videos
''shotcut''
{{{
/opt/shotcut/Shotcut.app/shotcut
}}}
https://howto-ubuntunew.blogspot.com/2016/12/how-to-install-shotcut-video-editor.html
!xsane
https://www.howtoinstall.co/en/ubuntu/xenial/xsane
https://en.wikipedia.org/wiki/Scanner_Access_Now_Easy
https://wiki.archlinux.org/index.php/SANE
LastURL last url
https://learn.itmasters.edu.au/mod/forum/discuss.php?d=23461
''netdiscover''
https://kalilinuxtutorials.com/netdiscover-scan-live-hosts-network/
https://github.com/alexxy/netdiscover

''Walkthroughs''

https://3mrgnc3.ninja/d0not5top-ctf-walkthrough-by-digip/
https://adaywithtape.blogspot.com/2017/04/vulnhub-d0not5top-writeup.html
https://www.blackroomsec.com/d0not5top-write-up/
https://www.vulnhub.com/entry/d0not5top-12,191/


https://www.wonderhowto.com/

''nmap''
https://www.networkcomputing.com/networking/nmap-tutorial-common-commands/page/0/1
https://hackertarget.com/nmap-tutorial/


https://en.wikipedia.org/wiki/VirtualBox

https://docs.kali.org/kali-on-arm/install-kali-linux-arm-raspberry-pi
''book''
https://books.google.com.au/books?id=FD1lDwAAQBAJ&pg=PT355&lpg=PT355&dq=kali+linux+hacking+S7&source=bl&ots=0mT6xdlrZi&sig=ACfU3U3NGLHkwjuS6j1CHpO6p1qivLi3vA&hl=ta&sa=X&ved=2ahUKEwi-vZvn7N_gAhUQXCsKHZ8jDbU4ChDoATADegQICRAB#v=onepage&q=kali%20linux%20hacking%20S7&f=false



nmap --max-rate 100 192.168.0.2

!Cude Blog: Stylesheet (style.css)

{{{
/*
Theme Name: Cude Blog
Theme URI: https://web-cude.com/cude-blog/
Author: web-cude.com
Author URI: https://web-cude.com/
Description: Cude Blog is a simple WordPress theme for the blogging and news site. Lightweight and elegant design will make your web project irresistible.
Version: 1.0.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cude-blog
Tags: blog, news, two-columns, right-sidebar, custom-background, custom-colors, custom-header, custom-logo, custom-menu, translation-ready
*/


/*fonts*/
@import url('https://fonts.googleapis.com/css?family=Roboto');
@import url('https://fonts.googleapis.com/css?family=Russo+One');

/*normalize*/
*{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	outline: none;
	border-radius: 0;
	border: none;
}

html, body{
	font-family: 'Roboto', sans-serif;
	color:#3a3a3a;
	height: 100%;
	padding: 0;
	margin: 0;
}

a {
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s linear;
	color: #324E7B;
}

p, label {
	transition: all 0.3s linear;
}

img{
	-moz-transition: all 1s ease-out;
	-o-transition: all 1s ease-out;
	-webkit-transition: all 1s ease-out;
}

*::selection {
 	background: #86A6DF;
 	color:#ffffff;
}

input[type="text"], 
input[type="email"], 
input[type="url"], 
input[type="password"], 
input[type="search"], 
input[type="number"], 
input[type="tel"], 
input[type="range"], 
input[type="date"], 
input[type="month"], 
input[type="week"], 
input[type="time"], 
input[type="datetime"], 
input[type="datetime-local"], 
input[type="color"], 
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 8px;
}

input:focus:valid,
textarea:focus:valid {
	border: 1px solid #86A6DF;
}

input:focus:invalid,
textarea:focus:invalid {
 	border: 1px solid #E10000;
}

li {
	list-style: none;
}

embed, iframe, object {
    max-width: 100%;
}

ol {
	list-style: decimal;
}

blockquote {
	background: #f9f9f9;
	border-left: 10px solid #ccc;
	margin: 1.5em 10px;
	padding: 0.5em 10px;
	quotes: "\201C""\201D""\2018""\2019";
}
blockquote:before {
	color: #ccc;
	content: open-quote;
	font-size: 4em;
	line-height: 0.1em;
	margin-right: 0.25em;
	vertical-align: -0.4em;
}
blockquote p {
 	display: inline;
}

.btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.btn-primary {
    background-color: #324E7B;
    color:#ffffff;
}

/*Alignments*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.text-left{
	text-align: left;
}

.text-center{
	text-align: center;
}

.text-right{
	text-align: right;
}

.text-justify{
	text-align: justify;
}

/*Captions*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*Galleries*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

.sticky {
	display: block;
}

/*Accessibility*/
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

#content[tabindex="-1"]:focus {
	outline: 0;
}

.bypostauthor {
	display: block;
}

/*header*/
.header_wrapper{
	width: 100%;
	height: auto;
	display: inline-block;
	position: relative;
}

.header_wrapper_fix{
	position: fixed;
	width: 100%;
	background-color: #ffffff;
	z-index: 10;
	padding: 12px;
}

/*site branding*/
.header_logo{
	width: 80%;
	display: inline-block;
	float: left;
	text-align: left;
	background-color: #ffffff;
}

.header_logo .site-title{
	font-family: 'Roboto',sans-serif;
	font-size: 25px;
	color: #324E7B;
	font-weight: 600;
	letter-spacing: 1px;
	padding-left: 17px;
}

.header_logo .site-title span{
	color: #a7881a;
}

.header_logo .site-description{
	padding-left: 17px;
    font-size: 14px;
}		

.header_logo .site-logo {
	width: 140px;
}

/*social*/
.header_search{
	width: 20%;
	float: left;
	text-align: right; 
	background-color: #ffffff;
	padding-right: 15px;
	padding-top: 4px;
}

.header_search .fa{
	font-size: 23px;
	color: #a7881a;
	padding: 5px;
}

.menu-toggle{
	display: none!important;
}

/*header image*/
.header-image{
	width: 100%;
	height: 420px;
	background-position: center;
	background-size: cover;
}

.header-image-bg{
	background-color: #00000066;
    width: 100%;
    height: 370px;
    position: absolute;
    top: 50px;
}

.header-image-title{
	color: #ffffff;
	text-transform: uppercase;
	width: 100%;
	text-align: center;
	position: relative;
	top: 54%;
}

.header-image-title h1{
	font-size: 35px;
	letter-spacing: 1px;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
}	

.header-image .entry-meta{
	position: relative;
    top: 58%;
    left: 36%;
    text-align: center;
    width: 350px;
    color: #f8f8f8;
}

/*navigation menu*/
.header_menu{
	width: 100%;
	display: inline-block;
	border-top: 2px solid #a7881a;
} 

.navigation {
	list-style: none;
	padding: 0;
	margin: 0;
	background-color: #2d2d2d;
	display: inline-block;
	width: 100%;
	font-size: 14px;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    background-blend-mode: overlay;
	background-image: url(../cude-blog/img/sp_bg.png);
}

.navigation li {
	float: left;
}

.navigation li:hover {
	background: #222;
}

.navigation li a {
	display: block;
	padding: 5px 15px;
	text-decoration: none;
	line-height: 40px;
	color: #f8f8f8;
}

.navigation ul {
	display: none;
	position: absolute;
	list-style: none;
	margin-top:-1px;
	padding: 0;
	overflow: hidden;
}

.navigation ul li {
	float: none;
}

.navigation li:hover > ul {
	display: block;
	background: #222;
	border-top: 0;
}

.navigation li li a:hover {
	background: #000;
}

.navigation .current-menu-item{
	background: #222;
}

/*site content*/
.site-content{
	width: 100%;
	background-image: url(../cude-blog/img/sp_main_bg.png);
	display: inline-block;
	margin-top: -5px;
}

/*primary area*/
.primary{
	width: 70%;
	height: 100%;
	padding: 20px;
	display: inline-block;
	float: left;
}

.title{
	font-family: 'Roboto',sans-serif;
	font-weight: 100;
	color: #324E7B;
	font-size: 30px;
	padding-left: 25px;
    padding-top: 25px;
}

/*posts list*/
.posts{
	clear: both;
	background-color: #f8f8f8;
	padding: 15px;
	margin-bottom: 30px;
	height: 217px;
	box-shadow: 0 10px 6px -6px #c7c7c7;
	border-top: 2px solid #dcdcdc;
}

.entry-title{
	font-family: 'Roboto',sans-serif;
	margin-bottom: 10px;
	padding: 0px;
}

.entry-title a{
	color: #324E7B;
	font-size: 20px;
	font-weight: 100;
}

.entry-thumbnail{
	float: left;
	overflow: hidden;
	width: 295px;
	height: 185px;
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 20px
}

.entry-thumbnail img{
	width: 295px;
	height: 185px;
	object-fit: cover;
}

.entry-thumbnail img:hover{
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
}

.posted-on{
	display: block;
	width: 100%;
	margin-bottom: 10px;
	font-size: 14px;
}

.posted-on a{
	color: #9c9c9c;
}	

.posted-on time{
	color: #324E7B;
}

.cd_cat{
	font-size: 14px;
	margin-right: 10px;
}

.cd_cat a{
 	color: #ffffff;
 	background-color: #a7881a;
    padding: 5px;
    border-radius: 4px;
}

.tags{
    font-size: 14px;
}

.tags a{
 	color: #ffffff;
 	background-color: #324e7b;
    padding: 5px;
    border-radius: 4px;
}

.entry-summary{
	margin-top: 10px;
	text-align: justify;
	font-size: 14px;
	line-height: 23px;
	padding-right: 10px;
	color: #4e4e4e;
	text-overflow: ellipsis;
	height: 50px;
}

.archive-description{
	background-color: #f8f8f8;
    padding: 15px;
    margin-bottom: 30px;
    box-shadow: 0 10px 6px -6px #c7c7c7;
    border-top: 2px solid #dcdcdc;
    font-size: 16px;
	line-height: 25px;
}

/*post*/
.post{
	clear: both;
	background-color: #f8f8f8;
	padding: 15px;
	margin-bottom: 30px;
	box-shadow: 0 10px 6px -6px #c7c7c7;
	border-top: 2px solid #dcdcdc;
}

.entry-content{
	font-size: 16px;
	line-height: 28px;
	color: #4e4e4e;
	padding: 10px;
}

.entry-content h1, h2, h3, h4, h5, h6{
	font-family: 'Roboto', sans-serif;
    font-weight: 100;
    padding: 10px 0px 10px 0px;
}

.entry-content img{
	max-width: 100%;
	height: auto;
}

.entry-meta{
	padding: 0px 10px 10px 10px;
}

.entry-content table {
	width:100%;
	text-align:justify;
	border-collapse:collapse;
	border-bottom:1px solid #E5E5E5;
	border-top:1px solid #E5E5E5;
	margin-bottom:20px;
}

.entry-content table td {
    padding:8px 10px;
    border-right:1px solid #E5E5E5;
}

.entry-content table tr:hover {
    background-color:#86A6DF;
}

.entry-content table th {
	padding: 8px 5px;
	color: #1f1f1f;
	text-align:center;
	border-right: 1px solid #E5E5E5;
	font-weight: normal;
	background: #efefef;
}

.entry-content table tr {
    border-left:1px solid #E5E5E5;
    border-top:1px solid #E5E5E5;
}

/*page*/
.cb_page{
	clear: both;
	background-color: #f8f8f8;
	padding: 15px;
	margin-bottom: 30px;
	box-shadow: 0 10px 6px -6px #c7c7c7;
	border-top: 2px solid #dcdcdc;
}

.entry-content li:before {
	content: "\f00c";
	color: white;
	background: #2980B9;
	display: inline-block;
	text-align: center;
	margin: 5px 10px;
	line-height: 40px;
	width: 40px;
	height: 40px;
	font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
}

/*secondary area*/
.secondary{
	width: 30%;
	padding: 20px;
	display: inline-block;
}

/*widget*/
.widget {
	margin: 0 0 20px 0;
	font-size: 14px;
	color: #2d2d2d;
	padding: 20px;
	word-wrap: break-word;
	background-color: #f8f8f8;
	border: 1px solid rgba(0,0,0,0.05);
	border-top: 2px solid #dcdcdc;
	box-shadow: 0 10px 6px -6px #c7c7c7;
}

.widget p{
	line-height: 30px;
}

.widget table{
	width: 100%;
	height: 200px;
}

.widget table th{
	text-align: left;
}

.widget table caption{
	padding-bottom: 15px;
}

.widget-title {
	margin: 0 0 10px;
	color: #2d2d2d;
	border-bottom: 1px solid #dadada;
	padding-bottom: 5px;
	font-size: 14px;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
}

.widget > ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    font-size: 16px;
    line-height: 25px;
}

.widget > ul > li {
    padding-bottom: 5px;
}

.widget a {
    color: #324E7B;
}

/*footer*/
footer{
	display: inline-block;
	width: 100%;
	height: auto;
	background-color: #2d2d2d;
	border-top: 2px solid #a7881a;
	background-blend-mode: overlay;
	background-image: url(../cude-blog/img/sp_bg.png);
	margin-bottom: -5px;
}

/*footer widget*/
.footer_widget{
	display: inline-block;
	float: left;
	margin: 0px;
	padding: 20px;
	width: 33%;
	font-family: 'Open Sans', sans-serif;
	color: #ffffff;
}

.footer_widget .title_widget{
	margin: 0 0 10px;
    color: #ffffff;
    border-bottom: 1px solid #dadada;
    padding-bottom: 5px;
    font-size: 14px;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
}  

.footer_widget .textwidget{
	color: #ffffff;
	font-size: 14px;
	margin-top: 15px;
}

.footer_widget p {
 	color: #ffffff;
 	line-height: 25px;
}

.footer_widget a {
	color: #a7881a;
}

.footer_widget .text_widget .fa{
	font-size: 18px;
}

.footer_widget table{
	width: 100%;
	height: 200px;
}

.footer_widget table th{
	text-align: left;
}

.footer_widget table caption{
	padding-bottom: 15px;
}

.footer_widget > ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    font-size: 16px;
    line-height: 25px;
}

.footer_widget > ul > li {
    padding-bottom: 5px;
}

/*pagination*/
.pagination{
	width: 100%;
    text-align: center;
}

.pagination span{
	background-color: #324E7B;
    padding: 5px 10px;
    color: #ffffff;
}

.pagination a{
	background-color: #ffffff;
    padding: 5px 10px;
}    

.pagination a:hover{
	background-color: #324E7B;
	color: #ffffff;
}

.pagination .dots{
	background-color: #ffffff;
	color: #324E7B;
}

/*search*/
.cb_search {
	width: 100%;
	position: relative;
}

.cb_search input {
 	border: none;
}

.cb_search .input {
	width: 100%;
	padding: 8px 37px 9px 15px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	box-shadow: inset 0 0 5px rgba(0,0,0,0.1), inset 0 1px 2px rgba(0,0,0,0.3);
	border-radius: 5px;
	background: #EEE;
	color: #555;
	outline: none;
}

.cb_search .input:focus {
	box-shadow: inset 0 0 5px rgba(0,0,0,0.2), inset 0 1px 2px rgba(0,0,0,0.4);
	background: #E8E8E8;
	color: #333;
}

.cb_search .submit {
	position: absolute;
	top: 0;
	right: 0;
	width: 37px;
	height: 100%;
	cursor: pointer;
	background: url(../cude-blog/img/go.png) 50% no-repeat;
	opacity: 0.5;
}

.cb_search .submit:hover {
  	opacity: 0.8;
}

input[type="search"] {
 	-webkit-appearance: none;
}

/*To top*/
.cude_blog_to_top {
	padding: 5px;
	position: fixed;
	bottom: 10px;
	cursor: pointer;
	display: none;
	color: #a7881a;
	font-size: 30px;
	left: 10px;
}

/*comment form*/
.comment-form{
	background-color: #f8f8f8;
    border: 1px solid #eaeaea;
    padding: 20px;
}

.comment-form p label{
	display: block!important;
    font-weight: 100;
    font-size: 14px;
    margin-top: 15px;
}    

.comments-area{
    margin-top: 25px;
}    

.comment-reply-title{
    color: #34495E;
    font-size: 18px;
    margin-left: 10px;
}

.comment-body{
    border: 1px solid rgba(0,0,0,0.05);
    background-color: #f8f8f8;
    margin-bottom: 15px;
}    

.required{
	color:#da0f00;
}

.form-submit{
	margin-top: 15px;
}

.comment-body footer{
    background-image: none;
    border-top: 2px solid #dcdcdc;
    background-color: #f8f8f8;
    padding: 15px;
}

.comment-content{
	padding: 15px;
	line-height: 25px;
	font-size: 16px;
}

.comment-author img{
	vertical-align: middle;
}

.comment-author{
	margin-bottom: 10px;
}

.reply{
	padding: 10px;	
}

.reply a {
	background-color: #324E7B;
    color: #ffffff;
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.comments-area li > ul,
.comments-area li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}
}}}
!Cude Blog: jquery.sidr.light.css (css/jquery.sidr.light.css)
{{{
.sidr {
  display: block;
  position: fixed;
  top: 0;
  height: 100%;
  z-index: 999999;
  width: 260px;
  overflow-x: hidden;
  overflow-y: auto;
  font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
  font-size: 35px;
  background: #f8f8f8;
  color: #333;
  box-shadow: 0 0 5px 5px #ebebeb inset;
}
.sidr .sidr-inner {
  padding: 0 0 15px;
}
.sidr .sidr-inner > p {
  margin-left: 15px;
  margin-right: 15px;
}
.sidr.right {
  left: auto;
  right: -260px;
}
.sidr.left {
  left: -260px;
  right: auto;
}
.sidr h1,
.sidr h2,
.sidr h3,
.sidr h4,
.sidr h5,
.sidr h6 {
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RmZGZkZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #dfdfdf));
  background-image: -moz-linear-gradient(#ffffff, #dfdfdf);
  background-image: -webkit-linear-gradient(#ffffff, #dfdfdf);
  background-image: linear-gradient(#ffffff, #dfdfdf);
  font-size: 22px;
  font-weight: normal;
  padding: 0 15px;
  margin: 0 0 5px;
  color: #333;
  line-height: 24px;
  box-shadow: 0 5px 5px 3px rgba(0, 0, 0, 0.2);
}
.sidr p {
  font-size: 26px;
  margin: 0 0 12px;
}
.sidr p a {
  color: rgba(51, 51, 51, 0.9);
}
.sidr > p {
  margin-left: 15px;
  margin-right: 15px;
}
.sidr ul {
  display: block;
  margin: 0 0 15px;
  padding: 0;
  border-top: 1px solid #dfdfdf;
  border-bottom: 1px solid white;
}
.sidr ul li {
  display: block;
  margin: 0;
  line-height: 48px;
  border-top: 1px solid white;
  border-bottom: 1px solid #dfdfdf;
}
.sidr ul li:hover, .sidr ul li.active, .sidr ul li.sidr-class-active {
  border-top: 0;
  line-height: 49px;
}
.sidr ul li:hover > a,
.sidr ul li:hover > span, .sidr ul li.active > a,
.sidr ul li.active > span, .sidr ul li.sidr-class-active > a,
.sidr ul li.sidr-class-active > span {
  box-shadow: 0 0 15px 3px #ebebeb inset;
}
.sidr ul li a,
.sidr ul li span {
  padding: 0 15px;
  display: block;
  text-decoration: none;
  color: #333;
}
.sidr ul li ul {
  border-bottom: 0;
  margin: 0;
}
.sidr ul li ul li {
  line-height: 40px;
  font-size: 26px;
}
.sidr ul li ul li:last-child {
  border-bottom: 0;
}
.sidr ul li ul li:hover, .sidr ul li ul li.active, .sidr ul li ul li.sidr-class-active {
  border-top: 0;
  line-height: 41px;
}
.sidr ul li ul li:hover > a,
.sidr ul li ul li:hover > span, .sidr ul li ul li.active > a,
.sidr ul li ul li.active > span, .sidr ul li ul li.sidr-class-active > a,
.sidr ul li ul li.sidr-class-active > span {
  box-shadow: 0 0 15px 3px #ebebeb inset;
}
.sidr ul li ul li a,
.sidr ul li ul li span {
  color: rgba(51, 51, 51, 0.8);
  padding-left: 30px;
}
.sidr form {
  margin: 0 15px;
}
.sidr label {
  font-size: 26px;
}
.sidr input[type="text"],
.sidr input[type="password"],
.sidr input[type="date"],
.sidr input[type="datetime"],
.sidr input[type="email"],
.sidr input[type="number"],
.sidr input[type="search"],
.sidr input[type="tel"],
.sidr input[type="time"],
.sidr input[type="url"],
.sidr textarea,
.sidr select {
  width: 100%;
  font-size: 26px;
  padding: 5px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 0 10px;
  border-radius: 2px;
  border: 0;
  background: rgba(0, 0, 0, 0.1);
  color: rgba(51, 51, 51, 0.6);
  display: block;
  clear: both;
}
.sidr input[type=checkbox] {
  width: auto;
  display: inline;
  clear: none;
}
.sidr input[type=button],
.sidr input[type=submit] {
  color: #f8f8f8;
  background: #333;
}
.sidr input[type=button]:hover,
.sidr input[type=submit]:hover {
  background: rgba(51, 51, 51, 0.9);
}

}}}
!Cude Blog: mediascreen.css (css/mediascreen.css)
{{{
@media screen and (max-width:1110px) {
	.primary {
		width: 100%;
	}

	.secondary {
		width: 100%;
	}

	.widget{
		float: left;
	    width: 100%;
	}

	.footer_widget{
		float: left;
	    width: 100%;
	}
}

@media screen and (max-width:780px) {

	.header-image-title h1{
		font-size: 58px;
	}

	.entry-summary{
		font-size: 24px;
	}

	.entry-thumbnail{
		width: 250px;
	}

	.entry-thumbnail img{
		width: 250px;
	}

	.menu-toggle{
		display: inline-block!important;
	}

	.header_menu{
		display: none;
	}

	.cb_search{
		display: none;
	}

}

@media screen and (max-width:650px) {

	.header-image-title h1{
		font-size: 40px;
	}

	.entry-thumbnail{
		display: none;
	}
	
	.comment-form textarea{ 
		width: 100%;
	}

	.entry-meta{
		padding: 0px;
	}

}    

}}}
!Cude Blog: customizer.js (js/customizer.js)
{{{
/**
 * File customizer.js.
 *
 * Theme Customizer enhancements for a better user experience.
 *
 * Contains handlers to make Theme Customizer preview reload changes asynchronously.
 */

( function( $ ) {

	// Site title and description.
	wp.customize( 'blogname', function( value ) {
		value.bind( function( to ) {
			$( '.site-title a' ).text( to );
		} );
	} );
	wp.customize( 'blogdescription', function( value ) {
		value.bind( function( to ) {
			$( '.site-description' ).text( to );
		} );
	} );

	// Header text color.
	wp.customize( 'header_textcolor', function( value ) {
		value.bind( function( to ) {
			if ( 'blank' === to ) {
				$( '.site-title, .site-description' ).css( {
					'clip': 'rect(1px, 1px, 1px, 1px)',
					'position': 'absolute'
				} );
			} else {
				$( '.site-title, .site-description' ).css( {
					'clip': 'auto',
					'position': 'relative'
				} );
				$( '.site-title a, .site-description' ).css( {
					'color': to
				} );
			}
		} );
	} );
} )( jQuery );

}}}
!Cude Blog: jquery.sidr.js (js/jquery.sidr.js)
{{{
/*! sidr - v2.2.1 - 2016-02-17
 * http://www.berriart.com/sidr/
 * Copyright (c) 2013-2016 Alberto Varela; Licensed MIT */

(function () {
  'use strict';

  var babelHelpers = {};

  babelHelpers.classCallCheck = function (instance, Constructor) {
    if (!(instance instanceof Constructor)) {
      throw new TypeError("Cannot call a class as a function");
    }
  };

  babelHelpers.createClass = function () {
    function defineProperties(target, props) {
      for (var i = 0; i < props.length; i++) {
        var descriptor = props[i];
        descriptor.enumerable = descriptor.enumerable || false;
        descriptor.configurable = true;
        if ("value" in descriptor) descriptor.writable = true;
        Object.defineProperty(target, descriptor.key, descriptor);
      }
    }

    return function (Constructor, protoProps, staticProps) {
      if (protoProps) defineProperties(Constructor.prototype, protoProps);
      if (staticProps) defineProperties(Constructor, staticProps);
      return Constructor;
    };
  }();

  babelHelpers;

  var sidrStatus = {
    moving: false,
    opened: false
  };

  var helper = {
    // Check for valids urls
    // From : http://stackoverflow.com/questions/5717093/check-if-a-javascript-string-is-an-url

    isUrl: function isUrl(str) {
      var pattern = new RegExp('^(https?:\\/\\/)?' + // protocol
      '((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.?)+[a-z]{2,}|' + // domain name
      '((\\d{1,3}\\.){3}\\d{1,3}))' + // OR ip (v4) address
      '(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*' + // port and path
      '(\\?[;&a-z\\d%_.~+=-]*)?' + // query string
      '(\\#[-a-z\\d_]*)?$', 'i'); // fragment locator

      if (pattern.test(str)) {
        return true;
      } else {
        return false;
      }
    },


    // Add sidr prefixes
    addPrefixes: function addPrefixes($element) {
      this.addPrefix($element, 'id');
      this.addPrefix($element, 'class');
      $element.removeAttr('style');
    },
    addPrefix: function addPrefix($element, attribute) {
      var toReplace = $element.attr(attribute);

      if (typeof toReplace === 'string' && toReplace !== '' && toReplace !== 'sidr-inner') {
        $element.attr(attribute, toReplace.replace(/([A-Za-z0-9_.\-]+)/g, 'sidr-' + attribute + '-$1'));
      }
    },


    // Check if transitions is supported
    transitions: function () {
      var body = document.body || document.documentElement,
          style = body.style,
          supported = false,
          property = 'transition';

      if (property in style) {
        supported = true;
      } else {
        (function () {
          var prefixes = ['moz', 'webkit', 'o', 'ms'],
              prefix = undefined,
              i = undefined;

          property = property.charAt(0).toUpperCase() + property.substr(1);
          supported = function () {
            for (i = 0; i < prefixes.length; i++) {
              prefix = prefixes[i];
              if (prefix + property in style) {
                return true;
              }
            }

            return false;
          }();
          property = supported ? '-' + prefix.toLowerCase() + '-' + property.toLowerCase() : null;
        })();
      }

      return {
        supported: supported,
        property: property
      };
    }()
  };

  var $$2 = jQuery;

  var bodyAnimationClass = 'sidr-animating';
  var openAction = 'open';
  var closeAction = 'close';
  var transitionEndEvent = 'webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend';
  var Menu = function () {
    function Menu(name) {
      babelHelpers.classCallCheck(this, Menu);

      this.name = name;
      this.item = $$2('#' + name);
      this.openClass = name === 'sidr' ? 'sidr-open' : 'sidr-open ' + name + '-open';
      this.menuWidth = this.item.outerWidth(true);
      this.speed = this.item.data('speed');
      this.side = this.item.data('side');
      this.displace = this.item.data('displace');
      this.timing = this.item.data('timing');
      this.method = this.item.data('method');
      this.onOpenCallback = this.item.data('onOpen');
      this.onCloseCallback = this.item.data('onClose');
      this.onOpenEndCallback = this.item.data('onOpenEnd');
      this.onCloseEndCallback = this.item.data('onCloseEnd');
      this.body = $$2(this.item.data('body'));
    }

    babelHelpers.createClass(Menu, [{
      key: 'getAnimation',
      value: function getAnimation(action, element) {
        var animation = {},
            prop = this.side;

        if (action === 'open' && element === 'body') {
          animation[prop] = this.menuWidth + 'px';
        } else if (action === 'close' && element === 'menu') {
          animation[prop] = '-' + this.menuWidth + 'px';
        } else {
          animation[prop] = 0;
        }

        return animation;
      }
    }, {
      key: 'prepareBody',
      value: function prepareBody(action) {
        var prop = action === 'open' ? 'hidden' : '';

        // Prepare page if container is body
        if (this.body.is('body')) {
          var $html = $$2('html'),
              scrollTop = $html.scrollTop();

          $html.css('overflow-x', prop).scrollTop(scrollTop);
        }
      }
    }, {
      key: 'openBody',
      value: function openBody() {
        if (this.displace) {
          var transitions = helper.transitions,
              $body = this.body;

          if (transitions.supported) {
            $body.css(transitions.property, this.side + ' ' + this.speed / 1000 + 's ' + this.timing).css(this.side, 0).css({
              width: $body.width(),
              position: 'absolute'
            });
            $body.css(this.side, this.menuWidth + 'px');
          } else {
            var bodyAnimation = this.getAnimation(openAction, 'body');

            $body.css({
              width: $body.width(),
              position: 'absolute'
            }).animate(bodyAnimation, {
              queue: false,
              duration: this.speed
            });
          }
        }
      }
    }, {
      key: 'onCloseBody',
      value: function onCloseBody() {
        var transitions = helper.transitions,
            resetStyles = {
          width: '',
          position: '',
          right: '',
          left: ''
        };

        if (transitions.supported) {
          resetStyles[transitions.property] = '';
        }

        this.body.css(resetStyles).unbind(transitionEndEvent);
      }
    }, {
      key: 'closeBody',
      value: function closeBody() {
        var _this = this;

        if (this.displace) {
          if (helper.transitions.supported) {
            this.body.css(this.side, 0).one(transitionEndEvent, function () {
              _this.onCloseBody();
            });
          } else {
            var bodyAnimation = this.getAnimation(closeAction, 'body');

            this.body.animate(bodyAnimation, {
              queue: false,
              duration: this.speed,
              complete: function complete() {
                _this.onCloseBody();
              }
            });
          }
        }
      }
    }, {
      key: 'moveBody',
      value: function moveBody(action) {
        if (action === openAction) {
          this.openBody();
        } else {
          this.closeBody();
        }
      }
    }, {
      key: 'onOpenMenu',
      value: function onOpenMenu(callback) {
        var name = this.name;

        sidrStatus.moving = false;
        sidrStatus.opened = name;

        this.item.unbind(transitionEndEvent);

        this.body.removeClass(bodyAnimationClass).addClass(this.openClass);

        this.onOpenEndCallback();

        if (typeof callback === 'function') {
          callback(name);
        }
      }
    }, {
      key: 'openMenu',
      value: function openMenu(callback) {
        var _this2 = this;

        var $item = this.item;

        if (helper.transitions.supported) {
          $item.css(this.side, 0).one(transitionEndEvent, function () {
            _this2.onOpenMenu(callback);
          });
        } else {
          var menuAnimation = this.getAnimation(openAction, 'menu');

          $item.css('display', 'block').animate(menuAnimation, {
            queue: false,
            duration: this.speed,
            complete: function complete() {
              _this2.onOpenMenu(callback);
            }
          });
        }
      }
    }, {
      key: 'onCloseMenu',
      value: function onCloseMenu(callback) {
        this.item.css({
          left: '',
          right: ''
        }).unbind(transitionEndEvent);
        $$2('html').css('overflow-x', '');

        sidrStatus.moving = false;
        sidrStatus.opened = false;

        this.body.removeClass(bodyAnimationClass).removeClass(this.openClass);

        this.onCloseEndCallback();

        // Callback
        if (typeof callback === 'function') {
          callback(name);
        }
      }
    }, {
      key: 'closeMenu',
      value: function closeMenu(callback) {
        var _this3 = this;

        var item = this.item;

        if (helper.transitions.supported) {
          item.css(this.side, '').one(transitionEndEvent, function () {
            _this3.onCloseMenu(callback);
          });
        } else {
          var menuAnimation = this.getAnimation(closeAction, 'menu');

          item.animate(menuAnimation, {
            queue: false,
            duration: this.speed,
            complete: function complete() {
              _this3.onCloseMenu();
            }
          });
        }
      }
    }, {
      key: 'moveMenu',
      value: function moveMenu(action, callback) {
        this.body.addClass(bodyAnimationClass);

        if (action === openAction) {
          this.openMenu(callback);
        } else {
          this.closeMenu(callback);
        }
      }
    }, {
      key: 'move',
      value: function move(action, callback) {
        // Lock sidr
        sidrStatus.moving = true;

        this.prepareBody(action);
        this.moveBody(action);
        this.moveMenu(action, callback);
      }
    }, {
      key: 'open',
      value: function open(callback) {
        var _this4 = this;

        // Check if is already opened or moving
        if (sidrStatus.opened === this.name || sidrStatus.moving) {
          return;
        }

        // If another menu opened close first
        if (sidrStatus.opened !== false) {
          var alreadyOpenedMenu = new Menu(sidrStatus.opened);

          alreadyOpenedMenu.close(function () {
            _this4.open(callback);
          });

          return;
        }

        this.move('open', callback);

        // onOpen callback
        this.onOpenCallback();
      }
    }, {
      key: 'close',
      value: function close(callback) {
        // Check if is already closed or moving
        if (sidrStatus.opened !== this.name || sidrStatus.moving) {
          return;
        }

        this.move('close', callback);

        // onClose callback
        this.onCloseCallback();
      }
    }, {
      key: 'toggle',
      value: function toggle(callback) {
        if (sidrStatus.opened === this.name) {
          this.close(callback);
        } else {
          this.open(callback);
        }
      }
    }]);
    return Menu;
  }();

  var $$1 = jQuery;

  function execute(action, name, callback) {
    var sidr = new Menu(name);

    switch (action) {
      case 'open':
        sidr.open(callback);
        break;
      case 'close':
        sidr.close(callback);
        break;
      case 'toggle':
        sidr.toggle(callback);
        break;
      default:
        $$1.error('Method ' + action + ' does not exist on jQuery.sidr');
        break;
    }
  }

  var i;
  var $ = jQuery;
  var publicMethods = ['open', 'close', 'toggle'];
  var methodName;
  var methods = {};
  var getMethod = function getMethod(methodName) {
    return function (name, callback) {
      // Check arguments
      if (typeof name === 'function') {
        callback = name;
        name = 'sidr';
      } else if (!name) {
        name = 'sidr';
      }

      execute(methodName, name, callback);
    };
  };
  for (i = 0; i < publicMethods.length; i++) {
    methodName = publicMethods[i];
    methods[methodName] = getMethod(methodName);
  }

  function sidr(method) {
    if (method === 'status') {
      return sidrStatus;
    } else if (methods[method]) {
      return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
    } else if (typeof method === 'function' || typeof method === 'string' || !method) {
      return methods.toggle.apply(this, arguments);
    } else {
      $.error('Method ' + method + ' does not exist on jQuery.sidr');
    }
  }

  var $$3 = jQuery;

  function fillContent($sideMenu, settings) {
    // The menu content
    if (typeof settings.source === 'function') {
      var newContent = settings.source(name);

      $sideMenu.html(newContent);
    } else if (typeof settings.source === 'string' && helper.isUrl(settings.source)) {
      $$3.get(settings.source, function (data) {
        $sideMenu.html(data);
      });
    } else if (typeof settings.source === 'string') {
      var htmlContent = '',
          selectors = settings.source.split(',');

      $$3.each(selectors, function (index, element) {
        htmlContent += '<div class="sidr-inner">' + $$3(element).html() + '</div>';
      });

      // Renaming ids and classes
      if (settings.renaming) {
        var $htmlContent = $$3('<div />').html(htmlContent);

        $htmlContent.find('*').each(function (index, element) {
          var $element = $$3(element);

          helper.addPrefixes($element);
        });
        htmlContent = $htmlContent.html();
      }

      $sideMenu.html(htmlContent);
    } else if (settings.source !== null) {
      $$3.error('Invalid Sidr Source');
    }

    return $sideMenu;
  }

  function fnSidr(options) {
    var transitions = helper.transitions,
        settings = $$3.extend({
      name: 'sidr', // Name for the 'sidr'
      speed: 200, // Accepts standard jQuery effects speeds (i.e. fast, normal or milliseconds)
      side: 'left', // Accepts 'left' or 'right'
      source: null, // Override the source of the content.
      renaming: true, // The ids and classes will be prepended with a prefix when loading existent content
      body: 'body', // Page container selector,
      displace: true, // Displace the body content or not
      timing: 'ease', // Timing function for CSS transitions
      method: 'toggle', // The method to call when element is clicked
      bind: 'touchstart click', // The event(s) to trigger the menu
      onOpen: function onOpen() {},
      // Callback when sidr start opening
      onClose: function onClose() {},
      // Callback when sidr start closing
      onOpenEnd: function onOpenEnd() {},
      // Callback when sidr end opening
      onCloseEnd: function onCloseEnd() {} // Callback when sidr end closing

    }, options),
        name = settings.name,
        $sideMenu = $$3('#' + name);

    // If the side menu do not exist create it
    if ($sideMenu.length === 0) {
      $sideMenu = $$3('<div />').attr('id', name).appendTo($$3('body'));
    }

    // Add transition to menu if are supported
    if (transitions.supported) {
      $sideMenu.css(transitions.property, settings.side + ' ' + settings.speed / 1000 + 's ' + settings.timing);
    }

    // Adding styles and options
    $sideMenu.addClass('sidr').addClass(settings.side).data({
      speed: settings.speed,
      side: settings.side,
      body: settings.body,
      displace: settings.displace,
      timing: settings.timing,
      method: settings.method,
      onOpen: settings.onOpen,
      onClose: settings.onClose,
      onOpenEnd: settings.onOpenEnd,
      onCloseEnd: settings.onCloseEnd
    });

    $sideMenu = fillContent($sideMenu, settings);

    return this.each(function () {
      var $this = $$3(this),
          data = $this.data('sidr'),
          flag = false;

      // If the plugin hasn't been initialized yet
      if (!data) {
        sidrStatus.moving = false;
        sidrStatus.opened = false;

        $this.data('sidr', name);

        $this.bind(settings.bind, function (event) {
          event.preventDefault();

          if (!flag) {
            flag = true;
            sidr(settings.method, name);

            setTimeout(function () {
              flag = false;
            }, 100);
          }
        });
      }
    });
  }

  jQuery.sidr = sidr;
  jQuery.fn.sidr = fnSidr;

}());
}}}
!Cude Blog: scripts.js (js/scripts.js)
{{{
jQuery(document).ready(function($) {

	$('.menu-toggle').sidr({side: 'right'});

	$(window).scroll(function() {
		if($(this).scrollTop() != 0) { 
			$('.cude_blog_to_top').fadeIn();
		} else {
			$('.cude_blog_to_top').fadeOut();
		}
	});

	$('.cude_blog_to_top').click(function() {
		$('body,html').animate({scrollTop:0},800);
	});

});	
}}}
[[Celestron Astromaster 130 EQ MD review|https://www.youtube.com/watch?v=1_gkkn-4BoM]]
[[Setting Up Celestron AstroMaster 130 EQ Telescope|https://www.youtube.com/watch?v=zkuV21d9ucg]]
[[How to Install Telescope Celestron AstroMaster 130EQ And How It Works (English Version)|https://www.youtube.com/watch?v=A2kvTqWezJM]]
[[Set Up Celestron Astromaster 130eq Motor Drive Telecope Step by step|https://www.youtube.com/watch?v=deFOZx42CI8]]
[[How To Learn And Use 1000 English Vocabulary Words|https://www.youtube.com/watch?v=DfWkxpdOEP8]]
[[How to improve your MEMORY | LBCC Study Skills|https://www.youtube.com/watch?v=Ulk9BCRA83Y&t=1127s]]
[[How to draw to remember more | Graham Shaw | TEDxVienna|https://www.youtube.com/watch?v=gj3ZnKlHqxI]]
[[Want to learn better? Start mind mapping | Hazel Wagner | TEDxNaperville|https://www.youtube.com/watch?v=5nTuScU70As]]
[[Learning how to learn | Barbara Oakley | TEDxOaklandUniversity|https://www.youtube.com/watch?v=O96fE1E-rf8]] <===



[[WHY Exercise is so Underrated (Brain Power & Movement Link)|https://www.youtube.com/watch?v=DsVzKCk066g]]
;;
[[Configure Microsoft Outlook For Gmail – Manual Settings|https://www.thewindowsclub.com/configure-microsoft-outlook-gmail-manual-settings]]
[[NVR|nvr000]]
[[Music | music]]
[[LastURL|lurl]]
[[whatsapp|wap]]
[[5 minutes craft |5minc]]
[[ebay|ebay]]
[[Puzzle | pz000]]
[[wirelessWIFI|rt001]]
[[Kali Linux | kali]]
[[Sony TV | stv00]]
[[Reading|rd000]]
[[Kodi|kodi00]]
[[CCTV|cctv]]
[[XAMPP linux|xamppL]]
[[Health |h000]]
[[Language|Lg]]
[[Sadhguru|sg00]]
[[Hydroponics|hp00]]
[[avaso]]
[[WebDesign]]
[[NBN]]
[[Raspberry Pi |rpi000]]
[[Free Energy|FreeG]]
[[INdia Trip|INT]]
[[LAST|last]]
[[knee ex |knee]]
[[Capital Transaction Rupee Accounts (CTRAs)|ctra]]
https://www.rithmschool.com/
[[QLD electricity]]
[[kids]]
[[followup|https://benramsey.com/]]
[[cisco|cisco]]
[[hindutemple.nl|temple]]
[[Wordpress|wp]]
[[Fusion 360]]
[[hindutemple|Htemple]]
[[misc topic|miscT]]
https://www.sunmicrocreators.com/
https://www.facebook.com/pg/sun.microcreators/posts/
http://topguider.blogspot.com/2016_01_07_archive.html

https://www.krizna.com/centos/setup-network-centos-7/
mencoder mf://*.jpg -mf fps=24 -ovc lavc -lavcopts vcodec=mpeg4:mbd=1:vbitrate=12800:autoaspect=1 -o video.avi
ref:https://superuser.com/questions/608569/convert-jpg-to-video-for-playback-in-vlc
[[sw|sw]]
[[kopiga|kp]]
[[Sri Balan]]
[[new]]
[[shell script]]
[[JQUERY|jq00]]
[[misc misc]]
[[File]]
[[Youtube | YT000]]

https://www.makeuseof.com/tag/7-top-secret-features-free-vlc-media-player-si/
[[Events|ev0000]]
[[LED screen Display|ledscr]]
[[webhosting|web000]]
[[Play Google drive Video files from webpage |web001]]
[[Freelance|fr00]]
[[MYSQL work | mysql00]]
[[Step Motor|stm00]]
[[House Inventry|HI00]]

[[Diabetes|Diabetes00]]

youtube: 
Wooroonooran National Park

name:svs vinayagar

login:svs.vinayagar@live.nl

http://control.mijnhostingpartner.nl/

SupER_229dv

NVV5SK^Up$)$x8C@I8

[[garden|g00]]

https://medium.freecodecamp.org/how-you-can-replicate-airbnbs-location-area-display-using-geocoding-in-angular-2001794f86a9

[[project|P00]]
[[GNS3|gns3]]
[[Telescope|m001]]
[[my Interesting|int00]]
[[unixtime convertor|https://www.unixtimeconverter.io/]]

[[Time & Energy: How To Stop Wasting Your Life & Focus On What Matters #TheLJshow |https://www.youtube.com/watch?v=fzuMLjkLFus]]
[[Barbara Oakley: "Learning How to Learn" | Talks at Google|https://www.youtube.com/watch?v=vd2dtkMINIw]]


https://hotexamples.com/search
[[interesting|int00]]
[[Office 365|o365]]
[[UPS|ups]]
[[Cygwin|cygwin]]
[[Genuine|genuine]]
[[XAMPP|xampp]]
[[PHP Frame Work | phpf]]
[[image Edit|ime]]
https://www.penguinaccounts.com.au/gst-low-value-imports-2018/
Why do some airplanes have 3 engines attached to the first wing, and only 2 attached to the other one? <==Quora
http://glendash.com/blog/wp-content/uploads/2014/06/Pole-Star-Method.jpg

https://slideplayer.com/slide/12241746/
https://slideplayer.com/slide/12299300/

https://slideplayer.com/slide/download/

https://hpuxadmin.wordpress.com/
https://developer.mozilla.org/en-US/


http://www.aptuz.com/blog/create-javascript-mvc-framework/

http://www.aptuz.com/blog/mobile-apps-using-angularjs-django-djangorestframework-and-redis-part-1/

http://c5blog.jordanlev.com/blog/2011/12/build-a-slideshow-block/
https://scotch.io/bar-talk/4-javascript-design-patterns-you-should-know



https://www.templaza.com/docs/ethic_wp/code/index.html

http://www.brendev.co/


http://flexslider.woothemes.com/thumbnail-slider.html

http://www.dcodes.net/2/docs/index.html



https://designm.ag/tutorials/image-rotator-css-jquery/


https://www.bnecreative.com/

[[How To Install Elasticsearch on ubuntu 16.04|http://www.remfath.com/blog/How%20To%20Install%20Elasticsearch,%20Logstash,%20and%20Kibana%20%28ELK%20Stack%29%20on%20Ubuntu%2016.04]]
https://www.digitalocean.com/community/tutorials/how-to-install-elasticsearch-logstash-and-kibana-elk-stack-on-ubuntu-14-04
http://blog.51cto.com/mxlmgl/1956237

https://www.slideshare.net/garr/kathy-sierra-on-building-a-global-microbrand-from-sxswi/25 <== need to download




https://www.ibm.com/support/knowledgecenter/en/SSVRGU_9.0.1/welcome/welcome_Domino_Designer_9_0_2_bug.html
[[Work Deep|https://www.npr.org/2017/07/25/539092670/you-2-0-the-value-of-deep-work-in-an-age-of-distraction]]
https://www.healthline.com/health/treat-pimple-on-neck#potential-complications
https://www.hoaxorfact.com/author/prashanth
https://www.hoaxorfact.com/health/consuming-vitamin-c-with-shrimp-prawn-results-in-arsenic-poisoning-hoax-analysis.html
https://www.hoax-slayer.net/decorative-magnets-on-refrigerators-cancer-warning-hoax/
https://www.hoax-slayer.net/
https://thegardeningcook.com/dieffenbachia-poisoning/
https://bongacams.com/OKUTANYNEONOM
[[Kadri Gopalnath Vol 2.....Watched anything like this???|https://www.youtube.com/watch?v=2Ub98vlXPcg]]
[[Anoushka Shankar - Indian Classical Raga|https://www.youtube.com/watch?v=-wra4p4zARw]]
https://www.ebay.com.au/itm/AC-Adapter-Charger-for-Dell-Inspiron-15-3520-3521-Laptop-Power-Supply-19-5V/222519748656?_trkparms=aid%3D555017%26algo%3DPL.CASSINI%26ao%3D1%26asc%3D20180905084510%26meid%3Df7fac9a9037e4b8c885c709c80555a34%26pid%3D100505%26rk%3D1%26rkt%3D1%26%26itm%3D222519748656&_trksid=p2045573.c100505.m3226


AC-Adapter-Charger-for-Dell-Inspiron-15-3520-3521-Laptop-Power-Supply-19-5V
[[C Sharp C#|CS000]]
[[Web Scraping with Python|WSPy]]
[[PHP]]
[[PHP frame work Laravel|php999]]
[[Javascript]]
[[Shell Script|SS00]]
[[HTML|html000]]
[[CSS]]
[[Bootstrap 3|bs3]]
[[SLQ ebooks|Sebooks]]
[[webmin|webmin000]]
[[regex|reg000]]
[[study|st00]]
[[CRUD in PHP|crud]]
[[LAMP Application]]
[[MYSQL|mysql000]]
[[Github|git000]]
[[interesting|int00]]
[[VScode|vs00]]
[[lyndaCourse|LC00]]
[[bootstrap4]]
[[kopiga]]
[[flask]]
[[jsp|jsp]]

https://medium.freecodecamp.org/
[[web programming need to shortout|misc00]]
[[having issue at friendni.com|mysql01]]
[[installing LAMP at HP laptop ubuntu 18.04|mysql02]]
[[Access mysql remotely |mysql03]]
[[Listing tables and their structure with the MySQL Command Line Client|https://www.electrictoolbox.com/list-table-structure-mysql-command-line/]]
!Copy structure from old table to new Table|
create table users as select * from feedback where 0=1
[[MYSQL access|mysql01a]]
1. Simple access
{{{
<?php
$dbServerName = "friendni.com";
$dbUsername = "friendn1_dob";
$dbPassword = "G00dyear!@#";
$dbName = "friendn1_dob";

// create connection
$conn = new mysqli($dbServerName, $dbUsername, $dbPassword, $dbName);

// check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
//echo "Connected successfully";
/*
 * get data from remote database table
 */
$sql = "SELECT Name,telephone FROM student";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "Name: " . $row["Name"]. " - Telephone: " . $row["telephone"]. "<br>";
    }
} else {
    echo "0 results";
}
?>

}}}
''output seen on url:''
[img[https://img2.files.wordpress.com/2018/07/screenhunter-01.png]]
''2. with class''
Class: Connect()
File Name: ~/classess/Connect.php
{{{
<?php
class Connect
{
        var $host = "friendni.com";
        var $dbuser = "friendn1_dob";
        var $dbpass = "G00dyear!@#";
        var $db = "friendn1_dob";

        function __construct()
        {
                mysql_connect($this->host,$this->dbuser,$this->dbpass) or die("Failed to connect to db server".mysql_error());
                mysql_select_db($this->db) or die("Failed to open database".mysql_error());
        }
}
?>

}}}

{{{
<?php
session_start();
// connection class
include 'classes/Connect.php';
$conn = new Connect();

$sql = "SELECT Name,telephone FROM student";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "Name: " . $row["Name"]. " - Telephone: " . $row["telephone"]. "<br>";
    }
} else {
    echo "0 results";
}
?>


}}}


!Need to gothrough it
1. install LAMP in LP  labptop

https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-ubuntu-18-04
https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-phpmyadmin-on-ubuntu-18-04

I have some issue. need to purge php7 and install php 5.6 success
https://gist.github.com/jpalala/55c5d45019bf9e13f1112379525b35de
https://askubuntu.com/questions/761713/how-can-i-downgrade-from-php-7-to-php-5-6-on-ubuntu-16-04

has some issue to access phpmyadmin  <== not yet resolved
http://codesprints.blogspot.com/2012/04/phpmyadmin-not-working-ubuntu.html
https://devanswers.co/installing-phpmyadmin-apache-ubuntu-18-04/
http://codesprints.blogspot.com/2012/04/phpmyadmin-not-working-ubuntu.html
https://linoxide.com/linux-how-to/install-phpmyadmin-lamp-ubuntu/
!Access mysql remotely fastcomet
{{{
mysql -u friendn1 -p -h 139.162.42.192
@#friendni
}}}
''Delete database''
{{{
drop database <db name>;
}}}
[[php8008]] along with 
[[formx.php |blk001]] [[blk002]] [[blk003]]  C:\xampp\htdocs\cw\formx.php

http://localhost:8080/cw/safran/login.php  <== validation is OK. need further 

[[student register|php8034]]

https://www.the-art-of-web.com/php/directory-list/   29th May 2018


http://webdevzoom.com/retrieve-data-from-mysql-database-using-php/
http://www.expertphp.in/article/insert-data-in-mysql-database
https://t4tutorials.com/right-join-in-php-source-code/
https://t4tutorials.com/sign-in-login-logout-signup-in-php-and-mysql/ <== login session

XAMPP:
https://premium.wpmudev.org/blog/upgrading-xampp/
https://youtu.be/J6EHP3SAXKQ
https://youtu.be/kjapSG_CvJc
https://youtu.be/m_qTs_FQ_jU
https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-16-04
[[Closary | nvr010]]
https://www.hikvision.com/en
''What is Main stream/Sub stream?''
Answer:

The main stream with high resolution and full frame rate can be used for'' main monitoring and recording''.

The ''sub stream'' with lower resolution can be used for ''mobile monitoring.''

Some devices support third stream which offers more flexible choices.
https://www.coursenet.lk/course/22287/be-certified-engineer-in-microsoft-office-365
https://docs.microsoft.com/en-us/office365/admin/add-users/about-admin-roles?view=o365-worldwide
{{{
Files: 452 Dirs: 75

	Array
(
    [0] => /xampp/htdocs/Chapter_03
    [1] => /xampp/htdocs/Chapter_03\03_01
    [2] => /xampp/htdocs/Chapter_03\03_02
    [3] => /xampp/htdocs/Chapter_03\03_02\sandbox
    [4] => /xampp/htdocs/Chapter_03\03_03
    [5] => /xampp/htdocs/Chapter_03\03_03\sandbox
    [6] => /xampp/htdocs/Chapter_03\03_04
    [7] => /xampp/htdocs/Chapter_03\03_04\sandbox
    [8] => /xampp/htdocs/Chapter_03\03_05
    [9] => /xampp/htdocs/Chapter_03\03_05\sandbox
    [10] => /xampp/htdocs/Chapter_03\03_06
    [11] => /xampp/htdocs/Chapter_03\03_06\sandbox
    [12] => /xampp/htdocs/Chapter_03\03_07
    [13] => /xampp/htdocs/Chapter_03\03_07\sandbox
    [14] => /xampp/htdocs/Chapter_03\03_08
    [15] => /xampp/htdocs/Chapter_03\03_08\sandbox
    [16] => /xampp/htdocs/Chapter_03\03_09
    [17] => /xampp/htdocs/Chapter_03\03_09\sandbox
    [18] => /xampp/htdocs/Chapter_03\03_10
    [19] => /xampp/htdocs/Chapter_03\03_10\sandbox
    [20] => /xampp/htdocs/Chapter_03\03_11
    [21] => /xampp/htdocs/Chapter_03\03_11\sandbox
    [22] => /xampp/htdocs/Chapter_03\03_12
    [23] => /xampp/htdocs/Chapter_03\03_12\sandbox
    [24] => /xampp/htdocs/Chapter_03\03_12-final
    [25] => /xampp/htdocs/Chapter_03\03_12-final\sandbox
    [26] => /xampp/htdocs/dashboard
    [27] => /xampp/htdocs/dashboard\de
    [28] => /xampp/htdocs/dashboard\docs
    [29] => /xampp/htdocs/dashboard\docs\images
    [30] => /xampp/htdocs/dashboard\docs\images\access-phpmyadmin-remotely
    [31] => /xampp/htdocs/dashboard\docs\images\activate-use-xdebug
    [32] => /xampp/htdocs/dashboard\docs\images\auto-start-xampp
    [33] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql
    [34] => /xampp/htdocs/dashboard\docs\images\configure-use-tomcat
    [35] => /xampp/htdocs/dashboard\docs\images\configure-vhosts
    [36] => /xampp/htdocs/dashboard\docs\images\configure-wildcard-subdomains
    [37] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf1
    [38] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf2
    [39] => /xampp/htdocs/dashboard\docs\images\deploy-git-app
    [40] => /xampp/htdocs/dashboard\docs\images\install-wordpress
    [41] => /xampp/htdocs/dashboard\docs\images\reset-mysql-password
    [42] => /xampp/htdocs/dashboard\docs\images\send-mail
    [43] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp
    [44] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache
    [45] => /xampp/htdocs/dashboard\docs\images\use-different-php-version
    [46] => /xampp/htdocs/dashboard\docs\images\use-php-fcgi
    [47] => /xampp/htdocs/dashboard\docs\images\use-sqlite
    [48] => /xampp/htdocs/dashboard\es
    [49] => /xampp/htdocs/dashboard\fr
    [50] => /xampp/htdocs/dashboard\hu
    [51] => /xampp/htdocs/dashboard\images
    [52] => /xampp/htdocs/dashboard\images\addons
    [53] => /xampp/htdocs/dashboard\images\bitnami-xampp
    [54] => /xampp/htdocs/dashboard\images\blog
    [55] => /xampp/htdocs/dashboard\images\flags
    [56] => /xampp/htdocs/dashboard\images\screenshots
    [57] => /xampp/htdocs/dashboard\images\stamps
    [58] => /xampp/htdocs/dashboard\images\team
    [59] => /xampp/htdocs/dashboard\it
    [60] => /xampp/htdocs/dashboard\javascripts
    [61] => /xampp/htdocs/dashboard\jp
    [62] => /xampp/htdocs/dashboard\pl
    [63] => /xampp/htdocs/dashboard\pt_br
    [64] => /xampp/htdocs/dashboard\ro
    [65] => /xampp/htdocs/dashboard\ru
    [66] => /xampp/htdocs/dashboard\stylesheets
    [67] => /xampp/htdocs/dashboard\tr
    [68] => /xampp/htdocs/dashboard\ur
    [69] => /xampp/htdocs/dashboard\zh_cn
    [70] => /xampp/htdocs/dashboard\zh_tw
    [71] => /xampp/htdocs/img
    [72] => /xampp/htdocs/l
    [73] => /xampp/htdocs/webalizer
    [74] => /xampp/htdocs/webalizer\xampp
)
    


	Array
(
    [0] => /xampp/htdocs/Chapter_03\03_01\basic.html
    [1] => /xampp/htdocs/Chapter_03\03_01\helloworld.php
    [2] => /xampp/htdocs/Chapter_03\03_01\index.html
    [3] => /xampp/htdocs/Chapter_03\03_01\my_phpinfo.php
    [4] => /xampp/htdocs/Chapter_03\03_02\sandbox\basic.html
    [5] => /xampp/htdocs/Chapter_03\03_02\sandbox\helloworld.php
    [6] => /xampp/htdocs/Chapter_03\03_02\sandbox\my_phpinfo.php
    [7] => /xampp/htdocs/Chapter_03\03_02\sandbox\variables.php
    [8] => /xampp/htdocs/Chapter_03\03_03\sandbox\basic.html
    [9] => /xampp/htdocs/Chapter_03\03_03\sandbox\helloworld.php
    [10] => /xampp/htdocs/Chapter_03\03_03\sandbox\my_phpinfo.php
    [11] => /xampp/htdocs/Chapter_03\03_03\sandbox\strings.php
    [12] => /xampp/htdocs/Chapter_03\03_03\sandbox\variables.php
    [13] => /xampp/htdocs/Chapter_03\03_04\sandbox\basic.html
    [14] => /xampp/htdocs/Chapter_03\03_04\sandbox\helloworld.php
    [15] => /xampp/htdocs/Chapter_03\03_04\sandbox\my_phpinfo.php
    [16] => /xampp/htdocs/Chapter_03\03_04\sandbox\string_functions.php
    [17] => /xampp/htdocs/Chapter_03\03_04\sandbox\strings.php
    [18] => /xampp/htdocs/Chapter_03\03_04\sandbox\variables.php
    [19] => /xampp/htdocs/Chapter_03\03_05\sandbox\basic.html
    [20] => /xampp/htdocs/Chapter_03\03_05\sandbox\helloworld.php
    [21] => /xampp/htdocs/Chapter_03\03_05\sandbox\integers.php
    [22] => /xampp/htdocs/Chapter_03\03_05\sandbox\my_phpinfo.php
    [23] => /xampp/htdocs/Chapter_03\03_05\sandbox\string_functions.php
    [24] => /xampp/htdocs/Chapter_03\03_05\sandbox\strings.php
    [25] => /xampp/htdocs/Chapter_03\03_05\sandbox\variables.php
    [26] => /xampp/htdocs/Chapter_03\03_06\sandbox\basic.html
    [27] => /xampp/htdocs/Chapter_03\03_06\sandbox\floats.php
    [28] => /xampp/htdocs/Chapter_03\03_06\sandbox\helloworld.php
    [29] => /xampp/htdocs/Chapter_03\03_06\sandbox\integers.php
    [30] => /xampp/htdocs/Chapter_03\03_06\sandbox\my_phpinfo.php
    [31] => /xampp/htdocs/Chapter_03\03_06\sandbox\string_functions.php
    [32] => /xampp/htdocs/Chapter_03\03_06\sandbox\strings.php
    [33] => /xampp/htdocs/Chapter_03\03_06\sandbox\variables.php
    [34] => /xampp/htdocs/Chapter_03\03_07\sandbox\arrays.php
    [35] => /xampp/htdocs/Chapter_03\03_07\sandbox\basic.html
    [36] => /xampp/htdocs/Chapter_03\03_07\sandbox\floats.php
    [37] => /xampp/htdocs/Chapter_03\03_07\sandbox\helloworld.php
    [38] => /xampp/htdocs/Chapter_03\03_07\sandbox\integers.php
    [39] => /xampp/htdocs/Chapter_03\03_07\sandbox\my_phpinfo.php
    [40] => /xampp/htdocs/Chapter_03\03_07\sandbox\string_functions.php
    [41] => /xampp/htdocs/Chapter_03\03_07\sandbox\strings.php
    [42] => /xampp/htdocs/Chapter_03\03_07\sandbox\variables.php
    [43] => /xampp/htdocs/Chapter_03\03_08\sandbox\arrays.php
    [44] => /xampp/htdocs/Chapter_03\03_08\sandbox\assoc_arrays.php
    [45] => /xampp/htdocs/Chapter_03\03_08\sandbox\basic.html
    [46] => /xampp/htdocs/Chapter_03\03_08\sandbox\floats.php
    [47] => /xampp/htdocs/Chapter_03\03_08\sandbox\helloworld.php
    [48] => /xampp/htdocs/Chapter_03\03_08\sandbox\integers.php
    [49] => /xampp/htdocs/Chapter_03\03_08\sandbox\my_phpinfo.php
    [50] => /xampp/htdocs/Chapter_03\03_08\sandbox\string_functions.php
    [51] => /xampp/htdocs/Chapter_03\03_08\sandbox\strings.php
    [52] => /xampp/htdocs/Chapter_03\03_08\sandbox\variables.php
    [53] => /xampp/htdocs/Chapter_03\03_09\sandbox\array_functions.php
    [54] => /xampp/htdocs/Chapter_03\03_09\sandbox\arrays.php
    [55] => /xampp/htdocs/Chapter_03\03_09\sandbox\assoc_arrays.php
    [56] => /xampp/htdocs/Chapter_03\03_09\sandbox\basic.html
    [57] => /xampp/htdocs/Chapter_03\03_09\sandbox\floats.php
    [58] => /xampp/htdocs/Chapter_03\03_09\sandbox\helloworld.php
    [59] => /xampp/htdocs/Chapter_03\03_09\sandbox\integers.php
    [60] => /xampp/htdocs/Chapter_03\03_09\sandbox\my_phpinfo.php
    [61] => /xampp/htdocs/Chapter_03\03_09\sandbox\string_functions.php
    [62] => /xampp/htdocs/Chapter_03\03_09\sandbox\strings.php
    [63] => /xampp/htdocs/Chapter_03\03_09\sandbox\variables.php
    [64] => /xampp/htdocs/Chapter_03\03_10\sandbox\array_functions.php
    [65] => /xampp/htdocs/Chapter_03\03_10\sandbox\arrays.php
    [66] => /xampp/htdocs/Chapter_03\03_10\sandbox\assoc_arrays.php
    [67] => /xampp/htdocs/Chapter_03\03_10\sandbox\basic.html
    [68] => /xampp/htdocs/Chapter_03\03_10\sandbox\booleans.php
    [69] => /xampp/htdocs/Chapter_03\03_10\sandbox\floats.php
    [70] => /xampp/htdocs/Chapter_03\03_10\sandbox\helloworld.php
    [71] => /xampp/htdocs/Chapter_03\03_10\sandbox\integers.php
    [72] => /xampp/htdocs/Chapter_03\03_10\sandbox\my_phpinfo.php
    [73] => /xampp/htdocs/Chapter_03\03_10\sandbox\string_functions.php
    [74] => /xampp/htdocs/Chapter_03\03_10\sandbox\strings.php
    [75] => /xampp/htdocs/Chapter_03\03_10\sandbox\variables.php
    [76] => /xampp/htdocs/Chapter_03\03_11\sandbox\array_functions.php
    [77] => /xampp/htdocs/Chapter_03\03_11\sandbox\arrays.php
    [78] => /xampp/htdocs/Chapter_03\03_11\sandbox\assoc_arrays.php
    [79] => /xampp/htdocs/Chapter_03\03_11\sandbox\basic.html
    [80] => /xampp/htdocs/Chapter_03\03_11\sandbox\booleans.php
    [81] => /xampp/htdocs/Chapter_03\03_11\sandbox\floats.php
    [82] => /xampp/htdocs/Chapter_03\03_11\sandbox\helloworld.php
    [83] => /xampp/htdocs/Chapter_03\03_11\sandbox\integers.php
    [84] => /xampp/htdocs/Chapter_03\03_11\sandbox\my_phpinfo.php
    [85] => /xampp/htdocs/Chapter_03\03_11\sandbox\null.php
    [86] => /xampp/htdocs/Chapter_03\03_11\sandbox\string_functions.php
    [87] => /xampp/htdocs/Chapter_03\03_11\sandbox\strings.php
    [88] => /xampp/htdocs/Chapter_03\03_11\sandbox\variables.php
    [89] => /xampp/htdocs/Chapter_03\03_12\sandbox\array_functions.php
    [90] => /xampp/htdocs/Chapter_03\03_12\sandbox\arrays.php
    [91] => /xampp/htdocs/Chapter_03\03_12\sandbox\assoc_arrays.php
    [92] => /xampp/htdocs/Chapter_03\03_12\sandbox\basic.html
    [93] => /xampp/htdocs/Chapter_03\03_12\sandbox\booleans.php
    [94] => /xampp/htdocs/Chapter_03\03_12\sandbox\floats.php
    [95] => /xampp/htdocs/Chapter_03\03_12\sandbox\helloworld.php
    [96] => /xampp/htdocs/Chapter_03\03_12\sandbox\integers.php
    [97] => /xampp/htdocs/Chapter_03\03_12\sandbox\my_phpinfo.php
    [98] => /xampp/htdocs/Chapter_03\03_12\sandbox\null.php
    [99] => /xampp/htdocs/Chapter_03\03_12\sandbox\string_functions.php
    [100] => /xampp/htdocs/Chapter_03\03_12\sandbox\strings.php
    [101] => /xampp/htdocs/Chapter_03\03_12\sandbox\type_casting.php
    [102] => /xampp/htdocs/Chapter_03\03_12\sandbox\variables.php
    [103] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\array_functions.php
    [104] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\arrays.php
    [105] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\assoc_arrays.php
    [106] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\basic.html
    [107] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\booleans.php
    [108] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\constants.php
    [109] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\floats.php
    [110] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\helloworld.php
    [111] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\integers.php
    [112] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\my_phpinfo.php
    [113] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\null.php
    [114] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\string_functions.php
    [115] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\strings.php
    [116] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\type_casting.php
    [117] => /xampp/htdocs/Chapter_03\03_12-final\sandbox\variables.php
    [118] => /xampp/htdocs/applications.html
    [119] => /xampp/htdocs/bitnami.css
    [120] => /xampp/htdocs/dashboard\404.html
    [121] => /xampp/htdocs/dashboard\de\faq.html
    [122] => /xampp/htdocs/dashboard\de\howto.html
    [123] => /xampp/htdocs/dashboard\de\howto_platform_links.html
    [124] => /xampp/htdocs/dashboard\de\howto_shared_links.html
    [125] => /xampp/htdocs/dashboard\de\index.html
    [126] => /xampp/htdocs/dashboard\docs\access-phpmyadmin-remotely.html
    [127] => /xampp/htdocs/dashboard\docs\access-phpmyadmin-remotely.pdf
    [128] => /xampp/htdocs/dashboard\docs\access-phpmyadmin-remotely.pdfmarks
    [129] => /xampp/htdocs/dashboard\docs\activate-use-xdebug.html
    [130] => /xampp/htdocs/dashboard\docs\activate-use-xdebug.pdf
    [131] => /xampp/htdocs/dashboard\docs\activate-use-xdebug.pdfmarks
    [132] => /xampp/htdocs/dashboard\docs\auto-start-xampp.html
    [133] => /xampp/htdocs/dashboard\docs\auto-start-xampp.pdf
    [134] => /xampp/htdocs/dashboard\docs\auto-start-xampp.pdfmarks
    [135] => /xampp/htdocs/dashboard\docs\backup-restore-mysql.html
    [136] => /xampp/htdocs/dashboard\docs\backup-restore-mysql.pdf
    [137] => /xampp/htdocs/dashboard\docs\backup-restore-mysql.pdfmarks
    [138] => /xampp/htdocs/dashboard\docs\change-mysql-temp-dir.html
    [139] => /xampp/htdocs/dashboard\docs\change-mysql-temp-dir.pdf
    [140] => /xampp/htdocs/dashboard\docs\change-mysql-temp-dir.pdfmarks
    [141] => /xampp/htdocs/dashboard\docs\configure-use-tomcat.html
    [142] => /xampp/htdocs/dashboard\docs\configure-use-tomcat.pdf
    [143] => /xampp/htdocs/dashboard\docs\configure-use-tomcat.pdfmarks
    [144] => /xampp/htdocs/dashboard\docs\configure-vhosts.html
    [145] => /xampp/htdocs/dashboard\docs\configure-vhosts.pdf
    [146] => /xampp/htdocs/dashboard\docs\configure-vhosts.pdfmarks
    [147] => /xampp/htdocs/dashboard\docs\configure-wildcard-subdomains.html
    [148] => /xampp/htdocs/dashboard\docs\configure-wildcard-subdomains.pdf
    [149] => /xampp/htdocs/dashboard\docs\configure-wildcard-subdomains.pdfmarks
    [150] => /xampp/htdocs/dashboard\docs\create-framework-project-zf1.html
    [151] => /xampp/htdocs/dashboard\docs\create-framework-project-zf1.pdf
    [152] => /xampp/htdocs/dashboard\docs\create-framework-project-zf1.pdfmarks
    [153] => /xampp/htdocs/dashboard\docs\create-framework-project-zf2.html
    [154] => /xampp/htdocs/dashboard\docs\create-framework-project-zf2.pdf
    [155] => /xampp/htdocs/dashboard\docs\create-framework-project-zf2.pdfmarks
    [156] => /xampp/htdocs/dashboard\docs\deploy-git-app.html
    [157] => /xampp/htdocs/dashboard\docs\deploy-git-app.pdf
    [158] => /xampp/htdocs/dashboard\docs\deploy-git-app.pdfmarks
    [159] => /xampp/htdocs/dashboard\docs\images\access-phpmyadmin-remotely\image1.png
    [160] => /xampp/htdocs/dashboard\docs\images\activate-use-xdebug\image1.png
    [161] => /xampp/htdocs/dashboard\docs\images\activate-use-xdebug\image2.png
    [162] => /xampp/htdocs/dashboard\docs\images\activate-use-xdebug\image3.png
    [163] => /xampp/htdocs/dashboard\docs\images\auto-start-xampp\image1.png
    [164] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image1.png
    [165] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image10.png
    [166] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image11.png
    [167] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image12.png
    [168] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image13.png
    [169] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image14.png
    [170] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image2.png
    [171] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image3.png
    [172] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image4.png
    [173] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image5.png
    [174] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image6.png
    [175] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image7.png
    [176] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image8.png
    [177] => /xampp/htdocs/dashboard\docs\images\backup-restore-mysql\image9.png
    [178] => /xampp/htdocs/dashboard\docs\images\configure-use-tomcat\image1.png
    [179] => /xampp/htdocs/dashboard\docs\images\configure-use-tomcat\image2.png
    [180] => /xampp/htdocs/dashboard\docs\images\configure-use-tomcat\image3.png
    [181] => /xampp/htdocs/dashboard\docs\images\configure-use-tomcat\image4.png
    [182] => /xampp/htdocs/dashboard\docs\images\configure-use-tomcat\image5.png
    [183] => /xampp/htdocs/dashboard\docs\images\configure-use-tomcat\image6.png
    [184] => /xampp/htdocs/dashboard\docs\images\configure-use-tomcat\image7.png
    [185] => /xampp/htdocs/dashboard\docs\images\configure-vhosts\image1.png
    [186] => /xampp/htdocs/dashboard\docs\images\configure-vhosts\image2.png
    [187] => /xampp/htdocs/dashboard\docs\images\configure-vhosts\image3.png
    [188] => /xampp/htdocs/dashboard\docs\images\configure-vhosts\image4.png
    [189] => /xampp/htdocs/dashboard\docs\images\configure-wildcard-subdomains\image1.png
    [190] => /xampp/htdocs/dashboard\docs\images\configure-wildcard-subdomains\image2.png
    [191] => /xampp/htdocs/dashboard\docs\images\configure-wildcard-subdomains\image3.png
    [192] => /xampp/htdocs/dashboard\docs\images\configure-wildcard-subdomains\image4.png
    [193] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf1\image1.png
    [194] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf1\image2.png
    [195] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf2\image1.png
    [196] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf2\image2.png
    [197] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf2\image3.png
    [198] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf2\image4.png
    [199] => /xampp/htdocs/dashboard\docs\images\create-framework-project-zf2\image5.png
    [200] => /xampp/htdocs/dashboard\docs\images\deploy-git-app\image1.png
    [201] => /xampp/htdocs/dashboard\docs\images\deploy-git-app\image2.png
    [202] => /xampp/htdocs/dashboard\docs\images\deploy-git-app\image3.png
    [203] => /xampp/htdocs/dashboard\docs\images\deploy-git-app\image4.png
    [204] => /xampp/htdocs/dashboard\docs\images\deploy-git-app\image5.png
    [205] => /xampp/htdocs/dashboard\docs\images\deploy-git-app\image6.png
    [206] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image01.png
    [207] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image02.png
    [208] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image11.png
    [209] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image110.png
    [210] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image12.png
    [211] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image13.png
    [212] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image14.png
    [213] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image15.png
    [214] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image16.png
    [215] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image17.png
    [216] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image18.png
    [217] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image19.png
    [218] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image21.png
    [219] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image22.png
    [220] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image23.png
    [221] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image24.png
    [222] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image31.png
    [223] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image32.png
    [224] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image33.png
    [225] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image34.png
    [226] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image35.png
    [227] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image36.png
    [228] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image37.png
    [229] => /xampp/htdocs/dashboard\docs\images\install-wordpress\image38.png
    [230] => /xampp/htdocs/dashboard\docs\images\reset-mysql-password\image1.png
    [231] => /xampp/htdocs/dashboard\docs\images\reset-mysql-password\image2.png
    [232] => /xampp/htdocs/dashboard\docs\images\reset-mysql-password\image3.png
    [233] => /xampp/htdocs/dashboard\docs\images\send-mail\image1.png
    [234] => /xampp/htdocs/dashboard\docs\images\send-mail\image2.png
    [235] => /xampp/htdocs/dashboard\docs\images\send-mail\image3.png
    [236] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image1.png
    [237] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image10.png
    [238] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image11.png
    [239] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image2.png
    [240] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image3.png
    [241] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image4.png
    [242] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image5.png
    [243] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image6.png
    [244] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image7.png
    [245] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image8.png
    [246] => /xampp/htdocs/dashboard\docs\images\transfer-files-ftp\image9.png
    [247] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache\image1.png
    [248] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache\image2.png
    [249] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache\image3.png
    [250] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache\image4.png
    [251] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache\image5.png
    [252] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache\image6.png
    [253] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache\image7.png
    [254] => /xampp/htdocs/dashboard\docs\images\troubleshoot-apache\image8.png
    [255] => /xampp/htdocs/dashboard\docs\images\use-different-php-version\image1.png
    [256] => /xampp/htdocs/dashboard\docs\images\use-php-fcgi\image1.png
    [257] => /xampp/htdocs/dashboard\docs\images\use-sqlite\image1.png
    [258] => /xampp/htdocs/dashboard\docs\images\use-sqlite\image2.png
    [259] => /xampp/htdocs/dashboard\docs\images\use-sqlite\image3.png
    [260] => /xampp/htdocs/dashboard\docs\increase-php-file-upload-limit.html
    [261] => /xampp/htdocs/dashboard\docs\increase-php-file-upload-limit.pdf
    [262] => /xampp/htdocs/dashboard\docs\increase-php-file-upload-limit.pdfmarks
    [263] => /xampp/htdocs/dashboard\docs\install-wordpress.html
    [264] => /xampp/htdocs/dashboard\docs\install-wordpress.pdf
    [265] => /xampp/htdocs/dashboard\docs\install-wordpress.pdfmarks
    [266] => /xampp/htdocs/dashboard\docs\reset-mysql-password.html
    [267] => /xampp/htdocs/dashboard\docs\reset-mysql-password.pdf
    [268] => /xampp/htdocs/dashboard\docs\reset-mysql-password.pdfmarks
    [269] => /xampp/htdocs/dashboard\docs\send-mail.html
    [270] => /xampp/htdocs/dashboard\docs\send-mail.pdf
    [271] => /xampp/htdocs/dashboard\docs\send-mail.pdfmarks
    [272] => /xampp/htdocs/dashboard\docs\transfer-files-ftp.html
    [273] => /xampp/htdocs/dashboard\docs\transfer-files-ftp.pdf
    [274] => /xampp/htdocs/dashboard\docs\transfer-files-ftp.pdfmarks
    [275] => /xampp/htdocs/dashboard\docs\troubleshoot-apache.html
    [276] => /xampp/htdocs/dashboard\docs\troubleshoot-apache.pdf
    [277] => /xampp/htdocs/dashboard\docs\troubleshoot-apache.pdfmarks
    [278] => /xampp/htdocs/dashboard\docs\use-different-php-version.html
    [279] => /xampp/htdocs/dashboard\docs\use-different-php-version.pdf
    [280] => /xampp/htdocs/dashboard\docs\use-different-php-version.pdfmarks
    [281] => /xampp/htdocs/dashboard\docs\use-php-fcgi.html
    [282] => /xampp/htdocs/dashboard\docs\use-php-fcgi.pdf
    [283] => /xampp/htdocs/dashboard\docs\use-php-fcgi.pdfmarks
    [284] => /xampp/htdocs/dashboard\docs\use-sqlite.html
    [285] => /xampp/htdocs/dashboard\docs\use-sqlite.pdf
    [286] => /xampp/htdocs/dashboard\docs\use-sqlite.pdfmarks
    [287] => /xampp/htdocs/dashboard\es\faq.html
    [288] => /xampp/htdocs/dashboard\es\howto.html
    [289] => /xampp/htdocs/dashboard\es\howto_platform_links.html
    [290] => /xampp/htdocs/dashboard\es\howto_shared_links.html
    [291] => /xampp/htdocs/dashboard\es\index.html
    [292] => /xampp/htdocs/dashboard\faq.html
    [293] => /xampp/htdocs/dashboard\favicon.ico
    [294] => /xampp/htdocs/dashboard\fr\faq.html
    [295] => /xampp/htdocs/dashboard\fr\howto.html
    [296] => /xampp/htdocs/dashboard\fr\howto_platform_links.html
    [297] => /xampp/htdocs/dashboard\fr\howto_shared_links.html
    [298] => /xampp/htdocs/dashboard\fr\index.html
    [299] => /xampp/htdocs/dashboard\howto.html
    [300] => /xampp/htdocs/dashboard\howto_platform_links.html
    [301] => /xampp/htdocs/dashboard\howto_shared_links.html
    [302] => /xampp/htdocs/dashboard\hu\faq.html
    [303] => /xampp/htdocs/dashboard\hu\howto.html
    [304] => /xampp/htdocs/dashboard\hu\howto_platform_links.html
    [305] => /xampp/htdocs/dashboard\hu\howto_shared_links.html
    [306] => /xampp/htdocs/dashboard\hu\index.html
    [307] => /xampp/htdocs/dashboard\images\addons\beetailer-icon.png
    [308] => /xampp/htdocs/dashboard\images\addons\elegantthemes-icon.png
    [309] => /xampp/htdocs/dashboard\images\addons\rockettheme-icon.png
    [310] => /xampp/htdocs/dashboard\images\addons\sugaroutfitters-icon.png
    [311] => /xampp/htdocs/dashboard\images\addons\templatemonster-icon.png
    [312] => /xampp/htdocs/dashboard\images\addons\themeforest-icon.png
    [313] => /xampp/htdocs/dashboard\images\addons\woothemes-icon.png
    [314] => /xampp/htdocs/dashboard\images\addons\wpmu-icon.png
    [315] => /xampp/htdocs/dashboard\images\addons-video-thumb.png
    [316] => /xampp/htdocs/dashboard\images\apple-logo.png
    [317] => /xampp/htdocs/dashboard\images\background.png
    [318] => /xampp/htdocs/dashboard\images\bitnami-xampp\image1.png
    [319] => /xampp/htdocs/dashboard\images\bitnami-xampp\image2.png
    [320] => /xampp/htdocs/dashboard\images\bitnami-xampp\image3.png
    [321] => /xampp/htdocs/dashboard\images\bitnami-xampp\image4.png
    [322] => /xampp/htdocs/dashboard\images\bitnami-xampp\image5.png
    [323] => /xampp/htdocs/dashboard\images\bitnami-xampp\image6.png
    [324] => /xampp/htdocs/dashboard\images\bitnami-xampp\image7.png
    [325] => /xampp/htdocs/dashboard\images\bitnami-xampp.png
    [326] => /xampp/htdocs/dashboard\images\blog\heartbleed-affected-osx.png
    [327] => /xampp/htdocs/dashboard\images\blog\heartbleed-affected.png
    [328] => /xampp/htdocs/dashboard\images\blog\heartbleed-fixed.png
    [329] => /xampp/htdocs/dashboard\images\blog\phpinfo-section-1.png
    [330] => /xampp/htdocs/dashboard\images\blog\phpinfo-section-2.png
    [331] => /xampp/htdocs/dashboard\images\fastly-logo.png
    [332] => /xampp/htdocs/dashboard\images\fastly-logo@2x.png
    [333] => /xampp/htdocs/dashboard\images\favicon.png
    [334] => /xampp/htdocs/dashboard\images\flags\cn.png
    [335] => /xampp/htdocs/dashboard\images\flags\de.png
    [336] => /xampp/htdocs/dashboard\images\flags\en.png
    [337] => /xampp/htdocs/dashboard\images\flags\es.png
    [338] => /xampp/htdocs/dashboard\images\flags\fr.png
    [339] => /xampp/htdocs/dashboard\images\flags\hu.png
    [340] => /xampp/htdocs/dashboard\images\flags\it.png
    [341] => /xampp/htdocs/dashboard\images\flags\jp.png
    [342] => /xampp/htdocs/dashboard\images\flags\pl.png
    [343] => /xampp/htdocs/dashboard\images\flags\pt.png
    [344] => /xampp/htdocs/dashboard\images\flags\pt_br.png
    [345] => /xampp/htdocs/dashboard\images\flags\ro.png
    [346] => /xampp/htdocs/dashboard\images\flags\ru.png
    [347] => /xampp/htdocs/dashboard\images\flags\tr.png
    [348] => /xampp/htdocs/dashboard\images\flags\ur.png
    [349] => /xampp/htdocs/dashboard\images\flags\zh_cn.png
    [350] => /xampp/htdocs/dashboard\images\flags\zh_tw.png
    [351] => /xampp/htdocs/dashboard\images\linux-logo.png
    [352] => /xampp/htdocs/dashboard\images\middleman.png
    [353] => /xampp/htdocs/dashboard\images\pdf-icon.png
    [354] => /xampp/htdocs/dashboard\images\screenshots\xampp-linux-start.jpg
    [355] => /xampp/htdocs/dashboard\images\screenshots\xampp-macosx-launch-credentials.jpg
    [356] => /xampp/htdocs/dashboard\images\screenshots\xampp-macosx-stack-manager-general.jpg
    [357] => /xampp/htdocs/dashboard\images\screenshots\xampp-macosx-stack-manager-network.jpg
    [358] => /xampp/htdocs/dashboard\images\screenshots\xampp-macosx-stack-manager-services.jpg
    [359] => /xampp/htdocs/dashboard\images\screenshots\xampp-macosx-stack-manager-volumes.jpg
    [360] => /xampp/htdocs/dashboard\images\screenshots\xampp-macosx-stack-manager.jpg
    [361] => /xampp/htdocs/dashboard\images\screenshots\xampp-macosx-start.jpg
    [362] => /xampp/htdocs/dashboard\images\screenshots\xampp-windows-start.jpg
    [363] => /xampp/htdocs/dashboard\images\social-icons-large.png
    [364] => /xampp/htdocs/dashboard\images\social-icons-large@2x.png
    [365] => /xampp/htdocs/dashboard\images\social-icons.png
    [366] => /xampp/htdocs/dashboard\images\social-icons@2x.png
    [367] => /xampp/htdocs/dashboard\images\sourceforge-logo.png
    [368] => /xampp/htdocs/dashboard\images\sourceforge-logo@2x.png
    [369] => /xampp/htdocs/dashboard\images\stack-icons.png
    [370] => /xampp/htdocs/dashboard\images\stack-icons@2x.png
    [371] => /xampp/htdocs/dashboard\images\stamps\stamp-173x38.gif
    [372] => /xampp/htdocs/dashboard\images\stamps\stamp-80x15.gif
    [373] => /xampp/htdocs/dashboard\images\stamps\stamp-88x31.gif
    [374] => /xampp/htdocs/dashboard\images\team\beltran-rueda.png
    [375] => /xampp/htdocs/dashboard\images\team\daniel-lopez.png
    [376] => /xampp/htdocs/dashboard\images\team\kai-seidler.jpg
    [377] => /xampp/htdocs/dashboard\images\team\kay-vogelgesang.jpg
    [378] => /xampp/htdocs/dashboard\images\team\paul-hinz.jpg
    [379] => /xampp/htdocs/dashboard\images\twitter-bird.png
    [380] => /xampp/htdocs/dashboard\images\windows-logo.png
    [381] => /xampp/htdocs/dashboard\images\xampp-cloud.png
    [382] => /xampp/htdocs/dashboard\images\xampp-cloud@2x.png
    [383] => /xampp/htdocs/dashboard\images\xampp-logo.svg
    [384] => /xampp/htdocs/dashboard\index.html
    [385] => /xampp/htdocs/dashboard\it\faq.html
    [386] => /xampp/htdocs/dashboard\it\howto.html
    [387] => /xampp/htdocs/dashboard\it\howto_platform_links.html
    [388] => /xampp/htdocs/dashboard\it\howto_shared_links.html
    [389] => /xampp/htdocs/dashboard\it\index.html
    [390] => /xampp/htdocs/dashboard\javascripts\all.js
    [391] => /xampp/htdocs/dashboard\javascripts\modernizr.js
    [392] => /xampp/htdocs/dashboard\jp\faq.html
    [393] => /xampp/htdocs/dashboard\jp\howto.html
    [394] => /xampp/htdocs/dashboard\jp\howto_platform_links.html
    [395] => /xampp/htdocs/dashboard\jp\howto_shared_links.html
    [396] => /xampp/htdocs/dashboard\jp\index.html
    [397] => /xampp/htdocs/dashboard\phpinfo.php
    [398] => /xampp/htdocs/dashboard\pl\faq.html
    [399] => /xampp/htdocs/dashboard\pl\howto.html
    [400] => /xampp/htdocs/dashboard\pl\howto_platform_links.html
    [401] => /xampp/htdocs/dashboard\pl\howto_shared_links.html
    [402] => /xampp/htdocs/dashboard\pl\index.html
    [403] => /xampp/htdocs/dashboard\pt_br\faq.html
    [404] => /xampp/htdocs/dashboard\pt_br\howto.html
    [405] => /xampp/htdocs/dashboard\pt_br\howto_platform_links.html
    [406] => /xampp/htdocs/dashboard\pt_br\howto_shared_links.html
    [407] => /xampp/htdocs/dashboard\pt_br\index.html
    [408] => /xampp/htdocs/dashboard\ro\faq.html
    [409] => /xampp/htdocs/dashboard\ro\howto.html
    [410] => /xampp/htdocs/dashboard\ro\howto_platform_links.html
    [411] => /xampp/htdocs/dashboard\ro\howto_shared_links.html
    [412] => /xampp/htdocs/dashboard\ro\index.html
    [413] => /xampp/htdocs/dashboard\ru\faq.html
    [414] => /xampp/htdocs/dashboard\ru\howto.html
    [415] => /xampp/htdocs/dashboard\ru\howto_platform_links.html
    [416] => /xampp/htdocs/dashboard\ru\howto_shared_links.html
    [417] => /xampp/htdocs/dashboard\ru\index.html
    [418] => /xampp/htdocs/dashboard\stylesheets\all-rtl.css
    [419] => /xampp/htdocs/dashboard\stylesheets\all.css
    [420] => /xampp/htdocs/dashboard\stylesheets\asciidoctor.css
    [421] => /xampp/htdocs/dashboard\stylesheets\normalize.css
    [422] => /xampp/htdocs/dashboard\tr\faq.html
    [423] => /xampp/htdocs/dashboard\tr\howto.html
    [424] => /xampp/htdocs/dashboard\tr\howto_platform_links.html
    [425] => /xampp/htdocs/dashboard\tr\howto_shared_links.html
    [426] => /xampp/htdocs/dashboard\tr\index.html
    [427] => /xampp/htdocs/dashboard\ur\faq.html
    [428] => /xampp/htdocs/dashboard\ur\howto.html
    [429] => /xampp/htdocs/dashboard\ur\howto_platform_links.html
    [430] => /xampp/htdocs/dashboard\ur\howto_shared_links.html
    [431] => /xampp/htdocs/dashboard\ur\index.html
    [432] => /xampp/htdocs/dashboard\zh_cn\faq.html
    [433] => /xampp/htdocs/dashboard\zh_cn\howto.html
    [434] => /xampp/htdocs/dashboard\zh_cn\howto_platform_links.html
    [435] => /xampp/htdocs/dashboard\zh_cn\howto_shared_links.html
    [436] => /xampp/htdocs/dashboard\zh_cn\index.html
    [437] => /xampp/htdocs/dashboard\zh_tw\faq.html
    [438] => /xampp/htdocs/dashboard\zh_tw\howto.html
    [439] => /xampp/htdocs/dashboard\zh_tw\howto_platform_links.html
    [440] => /xampp/htdocs/dashboard\zh_tw\howto_shared_links.html
    [441] => /xampp/htdocs/dashboard\zh_tw\index.html
    [442] => /xampp/htdocs/favicon.ico
    [443] => /xampp/htdocs/img\module_table_bottom.png
    [444] => /xampp/htdocs/img\module_table_top.png
    [445] => /xampp/htdocs/index.php
    [446] => /xampp/htdocs/l\array_functions.php
    [447] => /xampp/htdocs/l\arrays.php
    [448] => /xampp/htdocs/l\booleans.php
    [449] => /xampp/htdocs/l\readme.txt
    [450] => /xampp/htdocs/l\string_functions.php
    [451] => /xampp/htdocs/l\test01.php
)
    
}}}
{{{
Array ( [Files] => 455 [Folders] => 75 )
}}}
!count files under directory -1
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
  <?php
	$directory = "/xampp/htdocs/l/";
	$filecount = 0;
	$files = glob($directory . "*");
	if ($files){
	$filecount = count($files);
	}
	echo "There were $filecount files";
	?>

  </body>
</html>
}}}
Ref: https://stackoverflow.com/questions/12801370/count-how-many-files-in-directory-php
!count files under directory -2
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
	<?php 
	$directory = "/xampp/htdocs/l/";     // Directory
	if (glob($directory . "*.php") != false)
	{
	$filecount = count(glob($directory . "*.php"));
	echo "Total number of php file in a folder :".$filecount;
	}
	else
	{
	echo 0;
	}
	?>
  </body>
</html>
}}}
Ref: https://prittytimes.com/count-number-of-files-in-a-directory-using-php/
!count files under directory -3
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
	<?php 
    // integer starts at 0 before counting
    $i = 0; 
    $dir = '/xampp/htdocs/l';
    if ($handle = opendir($dir)) {
        while (($file = readdir($handle)) !== false){
            if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) 
                $i++;
        }
    }
    // prints out how many were in the directory
    echo "There were $i files";	
	?>
  </div>
  </body>
</html>

}}}

Ref: https://stackoverflow.com/questions/12801370/count-how-many-files-in-directory-php
!count files under directory -4
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
	<?php
	$dir = '/xampp/htdocs/l'; 
	$filecount = 0; 
	$d = dir($dir); 
	while ($f = $d->read()) { 
	 if(($f!= ".") && ($f!= "..")) { 
	  if(!is_dir($f)) $filecount++; 
	  } 
	 } 
	echo 'there are ',$filecount,' files in this folder'; 
	?>
  </div>
  </body>
</html>

}}}
Ref:https://www.webmasterworld.com/forum88/9414.htm
!count files under directory -5
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
   <?php
	$countdir = 0; //The folder counter
	$countfile = 0; //The file counter
	$arrayf = array(); //Optinal array for filenames
	$arrayd = array(); //Optinal array for directory names(foldernames)
	
	function loop($path = "/xampp/htdocs/") { //Path may be set, or not, meh, doesn't matter
		global $countdir, $countfile, $arrayf, $arrayd; //To make this simple script possible
		foreach(glob("$path*") as $g) { //Loops through every file in the path, and adds it to the variable "$g" (for global) to do the rest of the checks.
			if(is_dir($g)) { //Checks wether $g is a dir or not
				$countdir++; //Adds to folders counted
				$arrayd[] = $g; //Adds the folder name
				loop("$g\\"); //Continues the loop, as there is probably more files inside other dirs.
			} else { //If it's not a dir, then it's a file.
				$countfile++; //Adds to files counted
				$arrayf[] = $g; //Adds the file name
			}
		}
	}
	
	loop(); //Starts the function
	echo "Files: $countfile Dirs: $countdir" ."<br>"; //Prints out files and folders 
	//(this is from a commandline view, change " " to "<br />" if you wish to view it in the browser.
	
	/* Optinal (Delete all inbetween here if you want to :) ) */
	//Dirs
	?>
	<br />
    <pre>
	<?php
	print_r($arrayd); //Prints all the folders we found
	echo ""; //Makes a new line (commandline view)
	//Files
	?>
    </pre>
	<br />
	<br />
    <pre>
	<?php
	print_r($arrayf); //Prints all the files we found
	/* END Optinal */
	
    ?>
    </pre>
	<br />

	</div>
  </body>
</html>
}}}
[[output|out1001d]]
Ref:https://www.000webhost.com/forum/t/file-counter-php-script/26311/4
!count files under directory -6 W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
	<?php
	  function scan_dir($dirname)   {
	  $count['Files'] = 0;
      $count['Folders'] = 0;
      $dir = opendir($dirname);
      while (($file = readdir($dir)) !== false) {
        if($file != "." && $file != "..")  {
            if(is_file($dirname."/".$file))
                $count['Files']++;
            if(is_dir($dirname."/".$file)) {
                $count['Folders']++;
                $counts = scan_dir($dirname."/".$file);
                $count['Folders'] += $counts['Folders'];
                $count['Files'] += $counts['Files'];
            }
        }
      }
      closedir($dir);

      return $count;
}

$dirname = "/xampp/htdocs/";
$count = scan_dir($dirname);

print_r ( $count );
?>  
   </div>
  </body>
</html>

}}}
[[output|out1001e]]
Ref: https://www.000webhost.com/forum/t/file-counter-php-script/26311
!count files under directory -7 W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
	<?php
	  function scan_dir($dirname)   {
	  $count['Files'] = 0;
      $count['Folders'] = 0;
      $dir = opendir($dirname);
      while (($file = readdir($dir)) !== false) {
        if($file != "." && $file != "..")  {
            if(is_file($dirname."/".$file))
                $count['Files']++;
            if(is_dir($dirname."/".$file)) {
                $count['Folders']++;
                $counts = scan_dir($dirname."/".$file);
                $count['Folders'] += $counts['Folders'];
                $count['Files'] += $counts['Files'];
            }
        }
      }
      closedir($dir);

      return $count;
}

$dirname = "/xampp/htdocs/";
$count = scan_dir($dirname);

print_r ( $count );
?>  
   </div>
  </body>
</html>



}}}

Ref:https://stackoverflow.com/questions/2050859/copy-entire-contents-of-a-directory-to-another-using-php
!count files under directory -8
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
	<?php 
/**
 * Copy a file, or recursively copy a folder and its contents
 * @author      Aidan Lister <aidan@php.net>
 * @version     1.0.1
 * @link        http://aidanlister.com/2004/04/recursively-copying-directories-in-php/
 * @param       string   $source    Source path
 * @param       string   $dest      Destination path
 * @param       int      $permissions New folder creation permissions
 * @return      bool     Returns true on success, false on failure
 */
function xcopy($source, $dest, $permissions = 0755)
{
    // Check for symlinks
    if (is_link($source)) {
        return symlink(readlink($source), $dest);
    }

    // Simple copy for a file
    if (is_file($source)) {
        return copy($source, $dest);
    }

    // Make destination directory
    if (!is_dir($dest)) {
        mkdir($dest, $permissions);
    }

    // Loop through the folder
    $dir = dir($source);
    while (false !== $entry = $dir->read()) {
        // Skip pointers
        if ($entry == '.' || $entry == '..') {
            continue;
        }

        // Deep copy directories
        xcopy("$source/$entry", "$dest/$entry", $permissions);
    }

    // Clean up
    $dir->close();
    return true;
}	?>
   </div>
  </body>
</html>

}}}
Need to try implementation

Ref:  https://stackoverflow.com/questions/2050859/copy-entire-contents-of-a-directory-to-another-using-php
!Simplest way to read a list of files from a folder
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
	<?php 
	$directory = "/xampp/htdocs/l/";     // Directory
	if (glob($directory . "*.php") != false)
	{
	$filecount = count(glob($directory . "*.php"));
	echo "Total number of php file in a folder :".$filecount;
	}
	else
	{
	echo 0;
	}
	?>
  </body>
</html>
}}}
Ref: https://stackoverflow.com/questions/720751/how-to-read-a-list-of-files-from-a-folder-using-php
!List file name under specific directory W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>List file name under specific directory</title>
  </head>
  <body>
   <div id="header">
	<?php
	foreach (glob("/xampp/*.*") as $filename) {
    echo $filename."<br />";
	}
	?>
  </div>
  </body>
</html>
}}}
!Get Directory Contents W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Get Directory Contents</title>
  </head>
  <body>
   <div id="header">
	<?php

	function getDirContents($dir) {
    $handle = opendir($dir);
    if (!$handle) return array();
    $contents = array();
    while ($entry = readdir($handle)) {
        if ($entry=='.' || $entry=='..') continue;
        $entry = $dir.DIRECTORY_SEPARATOR.$entry;
        if (is_file($entry)) {
            $contents[] = $entry;
        } else if (is_dir($entry)) {  
            $contents = array_merge($contents, getDirContents($entry));
        }
    }
    closedir($handle);
    return $contents;
	}

	$directoryPath = '/xampp/htdocs/l';
//	$getDirContents = getDirContents($directoryPath);
    getDirContents($directoryPath);
	echo "<pre>";
	print_r(getDirContents($directoryPath));
	echo "</pre>";
	?>
  </div>
  </body>
</html>
}}}
!Check a path is a file or folder W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Check a path is a file or folder</title>
  </head>
  <body>
   <div id="header">
	<?php

	$path = "C:\\xampp\\htdocs\\l";
	//$path = "/xampp/htdocs/l";
	$sub_folder = scandir($path);
	$num = count($sub_folder);
	for ($i = 2; $i < $num; $i++)
	 {
      if(is_file($path.'\\'.$sub_folder[$i])){
        echo 'Warning';
      }

	 }
	?>
  </div>
  </body>
</html>
}}}
!Number of files in the directory W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in the directory</title>
  </head>
  <body>
   <div id="header">
	<?php
	$dir = '/xampp/htdocs/l'; 
	$filecount = 0; 
	$d = dir($dir); 
	while ($f = $d->read()) { 
	 if(($f!= ".") && ($f!= "..")) { 
	  if(!is_dir($f)) $filecount++; 
	  } 
	 } 
	echo 'there are ',$filecount,' files in this folder'; 
	?>
  </div>
  </body>
</html>
}}}
!Number of files & folders that are in a directory W 
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
   <?php
	$countdir = 0; //The folder counter
	$countfile = 0; //The file counter
	$arrayf = array(); //Optinal array for filenames
	$arrayd = array(); //Optinal array for directory names(foldernames)
	
	function loop($path = "/xampp/htdocs/") { //Path may be set, or not, meh, doesn't matter
		global $countdir, $countfile, $arrayf, $arrayd; //To make this simple script possible
		foreach(glob("$path*") as $g) { //Loops through every file in the path, and adds it to the variable "$g" (for global) to do the rest of the checks.
			if(is_dir($g)) { //Checks wether $g is a dir or not
				$countdir++; //Adds to folders counted
				$arrayd[] = $g; //Adds the folder name
				loop("$g\\"); //Continues the loop, as there is probably more files inside other dirs.
			} else { //If it's not a dir, then it's a file.
				$countfile++; //Adds to files counted
				$arrayf[] = $g; //Adds the file name
			}
		}
	}
	
	loop(); //Starts the function
	echo "Files: $countfile Dirs: $countdir" ."<br>"; //Prints out files and folders 
	//(this is from a commandline view, change " " to "<br />" if you wish to view it in the browser.
	
	/* Optinal (Delete all inbetween here if you want to :) ) */
	//Dirs
	?>
	<br />
    <pre>
	<?php
	print_r($arrayd); //Prints all the folders we found
	echo ""; //Makes a new line (commandline view)
	//Files
	?>
    </pre>
	<br />
	<br />
    <pre>
	<?php
	print_r($arrayf); //Prints all the files we found
	/* END Optinal */
	
    ?>
    </pre>
	<br />

	</div>
  </body>
</html>
}}}
!Number of files & folders that are in a directory -1 W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
	<?php
	  function scan_dir($dirname)   {
	  $count['Files'] = 0;
      $count['Folders'] = 0;
      $dir = opendir($dirname);
      while (($file = readdir($dir)) !== false) {
        if($file != "." && $file != "..")  {
            if(is_file($dirname."/".$file))
                $count['Files']++;
            if(is_dir($dirname."/".$file)) {
                $count['Folders']++;
                $counts = scan_dir($dirname."/".$file);
                $count['Folders'] += $counts['Folders'];
                $count['Files'] += $counts['Files'];
            }
        }
      }
      closedir($dir);

      return $count;
}

$dirname = "/xampp/htdocs/";
$count = scan_dir($dirname);

print_r ( $count );
?>  
   </div>
  </body>
</html>


}}}
!copy bunch of files and directory under specific directory W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>copy bunch of files and directory under specific directory/title>
  </head>
  <body>
   <div id="header">
	<?php 
	$src = "/xampp/htdocs/l";
	$dst = "/xampp/htdocs/m";
	function recurse_copy($src,$dst) { 
    $dir = opendir($src); 
    @mkdir($dst); 
    while(false !== ( $file = readdir($dir)) ) { 
        if (( $file != '.' ) && ( $file != '..' )) { 
            if ( is_dir($src . '/' . $file) ) { 
                recurse_copy($src . '/' . $file,$dst . '/' . $file); 
            } 
            else { 
                copy($src . '/' . $file,$dst . '/' . $file); 
            } 
        } 
    } 
    closedir($dir); 
	} 
	recurse_copy($src,$dst);
	?>	
   </div>
  </body>
</html>

}}}
!List directory contents by date W-
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Number of files in  thedirectory</title>
  </head>
  <body>
   <div id="header">
	<?php 
	$path = "/xampp/htdocs/l/";
//	$dest = "/xamp/htdocs/m";
	function listdir_by_date($path){
    $dir = opendir($path);
    $list = array();
    while($file = readdir($dir)){
        if ($file != '.' and $file != '..'){
            // add the filename, to be sure not to
            // overwrite a array key
            $ctime = filectime($path . $file) . ',' . $file;
            $list[$ctime] = $file;
        }
    }
    closedir($dir);
    krsort($list);
    return $list;
	}
	listdir_by_date($path);
	?>	
   </div>
  </body>
</html>

}}}
Ref: https://www.jonasjohn.de/snippets/php/listdir-by-date.htm
!List files name & size

{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>List files name & size </title>
  </head>
  <body>
   <div id="header">
	<?php
    $dir= '/me/fun/0_hari/';
	foreach (glob("$dir/*.jpg") as $file) {
    if ($file != '.' || $file != '..') {
    echo "$file"."  -   ". "size    " . filesize($file)."<br>"; 	

    }
}
?>

   </div>
  </body>
</html>
}}}

{{{
''Additional note''
<?php
$file= = glob('*.{php, txt}' GLOBE_BRACE);

}}}
Ref:https://www.slideshare.net/BrittaAlex/php-conference-asia-2016
!Loop Through Folders with PHP's Glob()
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>List files name & file type </title>
  </head>
  <body>
   <div id="header">
	<?php
	$dir = "/me/fun/";

	// Open a known directory, and proceed to read its contents
	if (is_dir($dir)) 
	{
		
		if ($dh = opendir($dir)) 
		{
			
			while (($file = readdir($dh)) !== false) 
			{
				echo "filename: $file : filetype: " . filetype($dir . $file) . "<br>";
			}
	
			closedir($dh);
	
		}
	
	}
    ?>
   </div>
  </body>
</html>
}}}


Ref: https://code.tutsplus.com/tutorials/quick-tip-loop-through-folders-with-phps-glob--net-11274
!Display lines of file as a bulleted W
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Display lines of file as a bulleted list </title>
  </head>
  <body>
   <div id="header">
	<?php
     $lines = file("list.txt");
	 foreach($lines as $line){
		 ?>
		 <li><?=$line ?></li>
	 <?php
	 }
	 ?>
   </div>
  </body>
</html>
}}}
!How to get the number of elements in an array?
You can get the number of elements in the array using count() function in PHP. 

It returns the number of elements as the return value.

{{{

<?php

$colors=array("Red","Green","Blue","Pink","Yellow");
print(count($colors)." elements in the array"); 

?>
}}}
Output:
5 elements in the array


Ref: http://www.latestcode.net/2010/03/
!How to count the frequency of array elements in PHP?
Some time you may want to count how many duplicate values in an array and their frequency.
In such case you can use array_count_values() function to find out them. Following example explains how to do it.
{{{

<?php
$shop_opend_days_for_month=array("Monday","Tuesday","Wednesday","Friday",
"Monday","Wednesday","Thursday","Saturday",
"Monday","Wednesday","Friday",
"Monday","Tuesday","Wednesday","Saturday");
print_r(array_count_values($shop_opend_days_for_month));
?>
}}} 
Output:
Array ( [Monday] => 4 [Tuesday] => 2 [Wednesday] => 4 [Friday] => 2 [Thursday] => 1 [Saturday] => 2 ) 
Above function can count string and integer values only. otherwise it throws an warning
message 'Can only count STRING and INTEGER values!'


Ref: http://www.latestcode.net/2010/03/
!How to compare the difference of two arrays?
Suppose that there are two arrays and there are common elements to both arrays. Then you want to get unique values to the both arrays. In such case you can use array_diff() and array_merge() functions in php. Following example shows how to do it.

{{{

<?php

$colors1=array("Red","Green","Blue","Black","White","Orange");

$colors2=array("Red","Green","Black","Blue","Pink","White","Silver");
print_r(array_merge(array_diff($colors1,$colors2),array_diff($colors2,$colors1)));
?> 
}}}
Output: 
Array ( [0] => Orange [1] => Pink [2] => Silver ) 
array_diff() function compares array1 against array2 and returns the difference as an array. 

array_merge() function merges the elements of one or more arrays together and returns an array with elements of input arrays.


Ref: http://www.latestcode.net/2010/03/
!How to combine two arrays?
Sometimes you may want to append one or more arrays in to one array. In such cases you can use array_merge() function to do it. Following example shows how to do that.

{{{
<?php

$colors1=array("Red","Green","Blue");

$colors2=array("Pink","White","Silver");

$colors3=array("Gold","Black","Orange");
print_r(array_merge($colors1,$colors2,$colors3));
?> 
}}}
Output:

Array ( [0] => Red[1] => Green[2] => Blue[3] => Pink[4] => White[5] => Silver[6] => Gold[7] => Black[8] => Orange )


Ref: http://www.latestcode.net/2010/03/
!How to reverse the order of the values of an array?
You can reverse the order of the array elements using array_reverse() function in PHP. Following example shows how to do it.

{{{

<?php

$array=array("First","Second","Third","Forth","Fifth"); 
print_r(array_reverse($array));
?>

}}} 
Output:
Array ( [0] => Fifth [1] => Forth [2] => Third [3] => Second [4] => First )


Ref: http://www.latestcode.net/2010/03/
!How to create an array with default values for it's elements?
Sometimes you may want to create an array which has default value to its elements. In such case you can use array_fill() function. Following example shows how to do it.

{{{
<?php

$colors = array_fill(0, 6,'White');

print_r($colors);
?>
}}} 
Output:
Array ( [0] => White [1] => White [2] => White [3] => White [4] => White [5] => White )


Ref: http://www.latestcode.net/2010/03/
!How to add elements to the end of an array?
In some case you may want to add one or more elements to the end of an array. using php array_push() function you can do it. Following example shows how to do it.



<?php

$days = array("Sunday","Monday","Tuesday","Wednesday");

array_push($days,"Thursday","Friday","Saturday");
print_r($days);
?> 

Output:
Array ( [0] => Sunday [1] => Monday [2] => Tuesday [3] => Wednesday [4] => Thursday [5] => Friday [6] => Saturday )Type the text for 'New Tiddler'

Ref: http://www.latestcode.net/2010/03/
!How to add elements to the beginning of an array?
In some case you may want to add one or more elements to the front of an array. using php array_unshift() function you can do it. Following example shows how to do it.

{{{
<?php

$numbers = array(4,5,6,7);

array_unshift($numbers,1,2,3);
print_r($numbers);
?> 
}}}
Output:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 )

Ref: http://www.latestcode.net/2010/03/
!How to calculate the sum of an array which contains integer or floating point values?
Sometimes you may want to calculate the sum of an array elements using array_sum() function. when you are using integer or floating point values in the array. For an example there is an array containing marks of a student according to the subjects. Then you can calculate the total marks and the total and average marks in convenient way instead of adding them one by one. Following example shows how to do this. 


{{{
<?php

$marks = array('Maths'=>84,'Science'=>92,'English'=>64,'History'=>70,'Music'=>96);



print("Total marks for ".count($marks)." subjects = ".array_sum($marks)."<br>");
print("Average marks = ".array_sum($marks)/count($marks));
?> 
}}}
Output:
Total marks for 5 subjects = 406

Average marks = 81.2 


* array_sum() function works with only integer and floating point numbers.

Ref: http://www.latestcode.net/2010/03/
!Online Visitors Counter
{{{
<?php
/*
 * Online Visitors Counter
 *
 * @copyright  Copyright 2014, Victor Nogueira (http://github.com/felladrin)
 * @link       http://github.com/felladrin/online-visitors-counter
 * @license    MIT License (http://opensource.org/licenses/MIT)
 */
require_once 'config.php';
session_start();
$_SESSION['id'] = (isset($_SESSION['id'])) ? $_SESSION['id'] : uniqid();
try
{
    if (!file_exists($databaseFile))
    {
        $createQuery = "CREATE TABLE 'online' ('id' TEXT PRIMARY KEY NOT NULL, 'page_title' TEXT, 'page_url' TEXT, 'last_activity' INTEGER)";
    }
    $db = new PDO("sqlite:$databaseFile");
    if (isset($createQuery))
    {
        $db->query($createQuery);
    }
}
catch (PDOException $e)
{
    die($e->getMessage());
}
$currentTime = time();
$gracePeriod = $currentTime - $secondsToConsiderOffline;
$id = $_SESSION['id'];
$page_title = (isset($_REQUEST['page_title'])) ? $_REQUEST['page_title'] : '';
$page_url = (isset($_REQUEST['page_url'])) ? $_REQUEST['page_url'] : '';
$delete = $db->prepare("DELETE FROM online WHERE last_activity < :gracePeriod OR id = :id");
$delete->bindValue(':gracePeriod', $gracePeriod, PDO::PARAM_INT);
$delete->bindValue(':id', $id, PDO::PARAM_STR);
$delete->execute();
$insert = $db->prepare("INSERT INTO online (id, page_title, page_url, last_activity) VALUES (:id, :page_title, :page_url, :currentTime)");
$insert->bindValue(':id', $id, PDO::PARAM_STR);
$insert->bindValue(':page_title', $page_title, PDO::PARAM_STR);
$insert->bindValue(':page_url', $page_url, PDO::PARAM_STR);
$insert->bindValue(':currentTime', $currentTime, PDO::PARAM_INT);
$insert->execute();
$count = $db->query('SELECT COUNT() AS visitors, COUNT(DISTINCT page_url) AS pages FROM online')->fetch(PDO::FETCH_ASSOC);
if ($count['visitors'] <= 1)
{
    $visitors = 1;
    $visitorWord = $visitorSingular;
}
else
{
    $visitors = $count['visitors'];
    $visitorWord = $visitorPlural;
}
if ($count['pages'] <= 1)
{
    $pages = 1;
    $pageWord = $pageSingular;
}
else
{
    $pages = $count['pages'];
    $pageWord = $pagePlural;
}
echo sprintf($linkFormat, $visitors, $visitorWord, $pages, $pageWord);
}}}
https://github.com/felladrin/online-visitors-counter/blob/master/ovc/counter.php
[[File Upload|php6001]]
[[File Download|php6002]]
[[Date and Time|php6003]]
[[Read a file|php6004]]


http://dba.fyicenter.com/faq/mysql/Count-Groups-Returned-from-GROUP-BY.html
https://www.w3schools.com/sql/sql_orderby.asp
!Uploading Files with PHP
{{{
[friendn1@sg10 prgs]$ cat upload-manager.php
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>File Upload Form</title>
</head>
<body>
    <form action="upload-manager.php" method="post" enctype="multipart/form-data">
        <h2>Upload File</h2>
        <label for="fileSelect">Filename:</label>
        <input type="file" name="photo" id="fileSelect">
        <input type="submit" name="submit" value="Upload">
        <p><strong>Note:</strong> Only .jpg, .jpeg, .gif, .png formats allowed to a max size of 5 MB.</p>
    </form>
<?php
// Check if the form was submitted
if($_SERVER["REQUEST_METHOD"] == "POST"){
    // Check if file was uploaded without errors
    if(isset($_FILES["photo"]) && $_FILES["photo"]["error"] == 0){
        $allowed = array("jpg" => "image/jpg", "jpeg" => "image/jpeg", "gif" => "image/gif", "png" => "image/png");
        $filename = $_FILES["photo"]["name"];
        $filetype = $_FILES["photo"]["type"];
        $filesize = $_FILES["photo"]["size"];

        // Verify file extension
        $ext = pathinfo($filename, PATHINFO_EXTENSION);
        if(!array_key_exists($ext, $allowed)) die("Error: Please select a valid file format.");

        // Verify file size - 5MB maximum
        $maxsize = 5 * 1024 * 1024;
        if($filesize > $maxsize) die("Error: File size is larger than the allowed limit.");

        // Verify MYME type of the file
        if(in_array($filetype, $allowed)){
            // Check whether file exists before uploading it
            if(file_exists("upload/" . $_FILES["photo"]["name"])){
                echo $_FILES["photo"]["name"] . " is already exists.";
            } else{
                move_uploaded_file($_FILES["photo"]["tmp_name"], "upload/" . $_FILES["photo"]["name"]);
                echo "Your file was uploaded successfully.";
            }
        } else{
            echo "Error: There was a problem uploading your file. Please try again.";
        }
    } else{
        echo "Error: " . $_FILES["photo"]["error"];
    }
}
?>
</body>
</html>
}}}
Ref:https://www.tutorialrepublic.com/php-tutorial/php-file-upload.php
!Downloading Files with PHP
''upload-manager.php''
{{{
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Simple Image Gallery</title>
<style type="text/css">
    .img-box{
        display: inline-block;
        text-align: center;
        margin: 0 15px;
    }
</style>
</head>
<body>
    <?php
    // Array containing sample image file names
    $images = array("kite.jpg", "balloons.jpg");

    // Loop through array to create image gallery
    foreach($images as $image){
        echo '<div class="img-box">';
            echo '<img src="images/' . $image . '" width="200" alt="' .  pathinfo($image, PATHINFO_FILENAME) .'">';
            echo '<p><a href="download.php?file=' . urlencode($image) . '">Download</a></p>';
        echo '</div>';
    }
    ?>
</body>
</html>
}}}
''download.php''
{{{
<?php
if(isset($_REQUEST["file"])){
    // Get parameters
    $file = urldecode($_REQUEST["file"]); // Decode URL-encoded string
    $filepath = "images/" . $file;

    // Process download
    if(file_exists($filepath)) {
        header('Content-Description: File Transfer');
        header('Content-Type: application/octet-stream');
        header('Content-Disposition: attachment; filename="'.basename($filepath).'"');
        header('Expires: 0');
        header('Cache-Control: must-revalidate');
        header('Pragma: public');
        header('Content-Length: ' . filesize($filepath));
        flush(); // Flush system output buffer
        readfile($filepath);
        exit;
    }
}
?>
}}}

Ref: https://www.tutorialrepublic.com/php-tutorial/php-file-download.php
!The PHP Date() Function
{{{
<?php
$today = date("d/m/Y");
echo $today;
?>

<?php
echo "<br>" . "<br>";
echo date("d/m/Y") . "<br>";
echo date("d-m-Y") . "<br>";
echo date("d.m.Y");
?>

<?php
echo "<br>" . "<br>";
echo date("h:i:s") . "<br>";
echo date("F d, Y h:i:s A") . "<br>";
echo date("h:i a");
?>

<?php
echo "<br>" . "<br>";
// Executed at March 05, 2014 07:19:18
$timestamp = time();
echo($timestamp);
?>

<?php
echo "<br>" . "<br>";
$timestamp = 1394003958;
echo(date("F d, Y h:i:s", $timestamp));
?>

<?php
echo "<br>" . "<br>";
// Create the timestamp for a particular date
echo mktime(15, 20, 12, 5, 10, 2014);
?>

<?php
echo "<br>" . "<br>";
// Get the weekday name of a particular date
echo date('l', mktime(0,0,0,1,4,2014));
?>

<?php
echo "<br>" . "<br>";
// Executed at March 05, 2014
$futureDate = mktime(0,0,0,date("m")+30,date("d"),date("Y"));
echo date("d/m/Y", $futureDate);
?>

}}}
Ref:https://www.tutorialrepublic.com/php-tutorial/php-date-and-time.php
!Reading Fixed Number of Characters!
{{{
<?php
$file = "data.txt";

// Check the existence of file
if(file_exists($file)){
    // Open the file for reading
    $handle = fopen($file, "r") or die("ERROR: Cannot open the file.");

    // Read fixed number of bytes from the file
    $content = fread($handle, "20");

    // Closing the file handle
    fclose($handle);

    // Display the file content
    echo $content;
} else{
    echo "ERROR: File does not exist.";
}

}}}
!Reading the Entire Contents of a File
{{{
<?php
$file = "data1.txt";

// Check the existence of file
if(file_exists($file)){
    // Open the file for reading
    $handle = fopen($file, "r") or die("ERROR: Cannot open the file.");

    // Reading the entire file
    $content = fread($handle, filesize($file));

    // Closing the file handle
    fclose($handle);

    // Display the file content
    echo $content;
} else{
    echo "ERROR: File does not exist.";
}
?>
}}}
Ref:https://www.tutorialrepublic.com/php-tutorial/php-file-system.php
!inventory system
https://medium.freecodecamp.org/making-an-awesome-inventory-management-application-in-php-and-mysql-from-start-to-finish-90bc5996680a
https://codecanyon.net/item/intelle-stock-manager/20542681?s_rank=23<== seems to be good
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Arrays</title>
  </head>
  <body>
	<ol style="font-size:24px;">
	  <li>
	  PHP is a server-side language, with HTML embedding.
	  </li><br/>
	  For instance:<br\>
	<ul>
	  <?php
	  echo "<li style='color:blue;'>
	  This PHP code is INSIDE the PHP delimiters
	  </li>";
	  ?>
	  <li style="color:green;">
	  This HTML code is OUTSIDE the PHP delimiters
	  </li>
	</ul>
	</ol>
    
  </body>
</html>

}}}
Ref: C:\me\study\PHP\external\Introduction to PHP v1.pdf
!Date and Time
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Date and Time</title>
  </head>
  <body>
	<?php
    $t=time();
	// PHP will take your current date and format date according to specified characters
 
	// Lets says, its 15 Jan 2009
 
	echo date("m/d/y")."<BR>";
	echo date("m.d.y")."<BR>";	
	echo date("Y-m-d")."<BR>";
	echo date("d F, Y")."<BR>";
	echo(date("m/d/y h:i:s",$t))."<BR>";
	echo date("e")."<BR>";
	echo date("T")."<BR>";	
	echo date("I")."<BR>";
	echo date("O")."<BR>";
	echo date("P")."<BR>";
	echo date("Z")."<BR>";
 
?>
  </body>
</html>
}}}
!
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Arrays</title>
  </head>
  <body>
<?php
 
$price = 5;
 
print "<table border=\"1\" align=\"center\">";
 
print "<tr><th>Quantity</th>";
 
print "<th>Price</th></tr>";
 
$i=10;
 
Do{
 
                print "<tr><td>";
 
                print $i;
 
                print "</td><td>";
 
                print $price * $i;
 
                print "</td></tr>";
 
$i = $i + 10;
 
}
 
While ($i <= 100)
 
?>
  </body>
</html>
}}}
!while loop
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>While </title>
  </head>
  <body>
<?php
 
<?php
 
$price = 5;
 
print "<table border=\"1\" align=\"center\">";
 
print "<tr><th>Quantity</th>";
 
print "<th>Price</th></tr>";
 
$i=10;
 
While ($i <= 100){
 
                print "<tr><td>";
 
                print $i;
 
                print "</td><td>";
 
                print $price * $i;
 
                print "</td></tr>";
 
$i = $i + 10;
 
}
 
print "</table>";
 
?>
 
?>
  </body>
</html>
}}}
!For loop
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>For loop </title>
  </head>
  <body>
	<?php 
	$price = 5; 
	print "<table border=\"1\" align=\"center\">"; 
	print "<tr><th>Quantity</th>"; 
	print "<th>Price</th></tr>"; 
	for ( $i = 10; $i <= 100; $i += 10) {
                print "<tr><td>"; 
                print $i; 
                print "</td><td>"; 
                print $price * $i; 
                print "</td></tr>"; 
	}
	print "</table>";
	?>
  </body>
</html>
}}}

Ref: https://www.tutorialscollection.com/how-to-use-php-for-loop-php-loop-types/
!Break and Continue
''Break''
{{{
$i = 0;
for ($i = 0;$i <= 5;$i++)
{
    if ($i==2)
    {
        break;
    }
    echo $i;
    echo "<br />";
}
echo "End of for loop" ;
}}}
''Continue''
{{{
$i = 0;
for ($i = 0;$i <= 5;$i++)
{
    if ($i==2)
    {
        continue;
    }
    echo $i;
    echo "<br />";
}
echo "End of for loop" ;
}}}
Ref: https://www.afterhoursprogramming.com/tutorial/php/break-and-continue/
!usage of $_SERVER['PHP_SELF' variable
{{{
<?php
header("Cache-Control: max-age=10");
$utc = new DateTimeZone("UTC");
$date = new DateTime("now", $utc);
$now = $date->format( DateTime::RFC2822 );
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>Variable:   $_SERVER['PHP_SELF']</title>
	</head>
    <body>
        <h1>This article is cached for 10 seconds</h1>

        <h2>Cache timestamp: <?php echo $now; ?></h2>
        <a href="<?=$_SERVER['PHP_SELF']?>">Refresh this page</a>
    </body>
</html>
}}}
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>Variable:   $_SERVER['PHP_SELF']</title>
	</head>
    <body>
<?php
// define variables and set to empty values
$name = $email = $gender = $comment = $website = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $name = test_input($_POST["name"]);
  $email = test_input($_POST["email"]);
  $website = test_input($_POST["website"]);
  $comment = test_input($_POST["comment"]);
  $gender = test_input($_POST["gender"]);
}

function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}
?>
<h2>PHP Form Validation Example</h2>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">  
  Name: <input type="text" name="name">
  <br><br>
  E-mail: <input type="text" name="email">
  <br><br>
  Website: <input type="text" name="website">
  <br><br>
  Comment: <textarea name="comment" rows="5" cols="40"></textarea>
  <br><br>
  Gender:
  <input type="radio" name="gender" value="female">Female
  <input type="radio" name="gender" value="male">Male
  <input type="radio" name="gender" value="other">Other
  <br><br>
  <input type="submit" name="submit" value="Submit">  
</form>

<?php
echo "<h2>Your Input:</h2>";
echo $name;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>
    </body>
</html>
}}}
Ref: https://www.w3schools.com/php/php_form_validation.asp
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>mysql connection</</title>
	</head>
    <body>
<?php
$servername = "localhost";
$username = "sara";
$password = "Pa55word";
 
// Creating Connection
$connection = mysqli_connect($servername, $username, $password);
 
// Let's Check Connection
if (!$connection) {
die("Database Connection failed: " . mysqli_connect_error());
}
 
echo "Connection Successful";
?>
    </body>
</html>
}}}
!
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>Error Handling</title>
	</head>
    <body>
<?php
//error handler function
function custom_error($err_no, $err_str) {
  echo "<b>Error caught!</b> [$err_no] $err_str<br>";
  echo "Script end";
  die();
}
//set error handler
set_error_handler("custom_error",E_USER_WARNING);
//trigger error
$test=3;
if ($test>=1) {
  trigger_error("Value has to be 1 or lower",E_USER_WARNING);
}
?>
    </body>
</html>
}}}
Ref: https://www.bitdegree.org/learn/php-error-handling/
!Associated Arrays
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Associated Arrays</title>
</head>
<body>
<?php
  $ages['Peter'] = "32";
  $ages['Sam'] = "30";
  $ages['Joe'] = "34";

  echo "Peter is ".$ages['Peter']." years old.";
?>
    </body>
</html>
}}}
!Multidimensional Arrays
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Associated Arrays</title>
</head>
<body>
<?php
  $families = Array(
  [Griffin] => Array([0] =>Peter,[1] =>Lois,[2] =>Megan),
  [Quagmire] => Array([0]=> Glenn),
  [Brown] => Array([0]=> Cleveland,[1]=> Loretta,[2]=> Jupior)
  );
  echo "Is ".$families['Griffin'][2] ."a part of the Griffin family?";
  
  
    $marks = array( 
        "mohammad" => array (
            "physics" => 35,
            "maths" => 30,	
            "chemistry" => 39
        ),
            
        "qadir" => array (
            "physics" => 30,
            "maths" => 32,
            "chemistry" => 29
        ),
            
        "zara" => array (
            "physics" => 31,
            "maths" => 22,
            "chemistry" => 39
        )
        );
         
         /* Accessing multi-dimensional array values */
         echo "Marks for mohammad in physics : " ;
         echo $marks['mohammad']['physics'] . "<br />"; 
         
         echo "Marks for qadir in maths : ";
         echo $marks['qadir']['maths'] . "<br />"; 
         
         echo "Marks for zara in chemistry : " ;
         echo $marks['zara']['chemistry'] . "<br />";
?>
    </body>
</html>
}}}
Ref: https://www.tutorialspoint.com/php/php_arrays.htm && https://www.slideshare.net/mazenet_solution/php-introduction-to-php-mazenet-solution slide 46
!Identifying Browser & Platform
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Browser Platform</title>
</head>
<body>
      <?php
         function getBrowser() { 
            $u_agent = $_SERVER['HTTP_USER_AGENT']; 
            $bname = 'Unknown';
            $platform = 'Unknown';
            $version = "";
            
            //First get the platform?
            if (preg_match('/linux/i', $u_agent)) {
               $platform = 'linux';
            }elseif (preg_match('/macintosh|mac os x/i', $u_agent)) {
               $platform = 'mac';
            }elseif (preg_match('/windows|win32/i', $u_agent)) {
               $platform = 'windows';
            }
            
            // Next get the name of the useragent yes seperately and for good reason
            if(preg_match('/MSIE/i',$u_agent) && !preg_match('/Opera/i',$u_agent)) {
               $bname = 'Internet Explorer';
               $ub = "MSIE";
            } elseif(preg_match('/Firefox/i',$u_agent)) {
               $bname = 'Mozilla Firefox';
               $ub = "Firefox";
            } elseif(preg_match('/Chrome/i',$u_agent)) {
               $bname = 'Google Chrome';
               $ub = "Chrome";
            }elseif(preg_match('/Safari/i',$u_agent)) {
               $bname = 'Apple Safari';
               $ub = "Safari";
            }elseif(preg_match('/Opera/i',$u_agent)) {
               $bname = 'Opera';
               $ub = "Opera";
            }elseif(preg_match('/Netscape/i',$u_agent)) {
               $bname = 'Netscape';
               $ub = "Netscape";
            }
            
            // finally get the correct version number
            $known = array('Version', $ub, 'other');
            $pattern = '#(?<browser>' . join('|', $known) . ')[/ ]+(?<version>[0-9.|a-zA-Z.]*)#';
            
            if (!preg_match_all($pattern, $u_agent, $matches)) {
               // we have no matching number just continue
            }
            
            // see how many we have
            $i = count($matches['browser']);
            
            if ($i != 1) {
               //we will have two since we are not using 'other' argument yet
               
               //see if version is before or after the name
               if (strripos($u_agent,"Version") < strripos($u_agent,$ub)){
                  $version= $matches['version'][0];
               }else {
                  $version= $matches['version'][1];
               }
            }else {
               $version= $matches['version'][0];
            }
            
            // check if we have a number
            if ($version == null || $version == "") {$version = "?";}
            return array(
               'userAgent' => $u_agent,
               'name'      => $bname,
               'version'   => $version,
               'platform'  => $platform,
               'pattern'   => $pattern
            );
         }
         
         // now try it
         $ua = getBrowser();
         $yourbrowser = "Your browser: " . $ua['name'] . " " . $ua['version'] .
            " on " .$ua['platform'] . " reports: <br >" . $ua['userAgent'];
         
         print_r($yourbrowser);
      ?>
</body>
</html>
}}}
Ref:https://www.tutorialspoint.com/php/php_web_concepts.htm
''Example #1 Find the string of text "php"''
{{{
<?php
// The "i" after the pattern delimiter indicates a case-insensitive search
if (preg_match("/php/i", "PHP is the web scripting language of choice.")) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}
?>
}}}

''Example #2 Find the word "web"''
{{{
<?php
/* The \b in the pattern indicates a word boundary, so only the distinct
 * word "web" is matched, and not a word partial like "webbing" or "cobweb" */
if (preg_match("/\bweb\b/i", "PHP is the web scripting language of choice.")) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}

if (preg_match("/\bweb\b/i", "PHP is the website scripting language of choice.")) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}
?>
}}}
''Example #3 Getting the domain name out of a URL''
{{{
<?php
// get host name from URL
preg_match('@^(?:http://)?([^/]+)@i',
    "http://www.php.net/index.html", $matches);
$host = $matches[1];

// get last two segments of host name
preg_match('/[^.]+\.[^.]+$/', $host, $matches);
echo "domain name is: {$matches[0]}\n";
?>
}}}
Ref: http://php.net/manual/en/function.preg-match.php
{{{
<html>
<head>
<title>PHP Server</title>
</head>
<body>
     <?php
      echo "\$_SERVER[\"HTTP_ACCEPT\"] = ".$_SERVER["HTTP_ACCEPT"]."<br>";
      echo "\$_SERVER[\"HTTP_ACCEPT_LANGUAGE\"] = ".$_SERVER["HTTP_ACCEPT_LANGUAGE"]."<br>";
      echo "\$_SERVER[\"HTTP_ACCEPT_ENCODING\"] = ".$_SERVER["HTTP_ACCEPT_ENCODING"]."<br>";
      echo "\$_SERVER[\"HTTP_USER_AGENT\"] = ".$_SERVER["HTTP_USER_AGENT"]."<br>";
      echo "\$_SERVER[\"HTTP_HOST\"] = ".$_SERVER["HTTP_HOST"]."<br>";
      echo "\$_SERVER[\"HTTP_CONNECTION\"] = ".$_SERVER["HTTP_CONNECTION"]."<br>";
      echo "\$_SERVER[\"PATH\"] = ".$_SERVER["PATH"]."<br>";
      echo "\$_SERVER[\"SystemRoot\"] = ".$_SERVER["SystemRoot"]."<br>";
      echo "\$_SERVER[\"COMSPEC\"] = ".$_SERVER["COMSPEC"]."<br>";
      echo "\$_SERVER[\"PATHEXT\"] = ".$_SERVER["PATHEXT"]."<br>";
      echo "\$_SERVER[\"WINDIR\"] = ".$_SERVER["WINDIR"]."<br>";
      echo "\$_SERVER[\"SERVER_SIGNATURE\"] = ".$_SERVER["SERVER_SIGNATURE"]."<br>";
      echo "\$_SERVER[\"SERVER_SOFTWARE\"] = ".$_SERVER["SERVER_SOFTWARE"]."<br>";
      echo "\$_SERVER[\"SERVER_NAME\"] = ".$_SERVER["SERVER_NAME"]."<br>";
      echo "\$_SERVER[\"SERVER_ADDR\"] = ".$_SERVER["SERVER_ADDR"]."<br>";
      echo "\$_SERVER[\"SERVER_PORT\"] = ".$_SERVER["SERVER_PORT"]."<br>";
      echo "\$_SERVER[\"REMOTE_ADDR\"] = ".$_SERVER["REMOTE_ADDR"]."<br>";
      echo "\$_SERVER[\"DOCUMENT_ROOT\"] = ".$_SERVER["DOCUMENT_ROOT"]."<br>";
      echo "\$_SERVER[\"SERVER_ADMIN\"] = ".$_SERVER["SERVER_ADMIN"]."<br>";
      echo "\$_SERVER[\"SCRIPT_FILENAME\"] = ".$_SERVER["SCRIPT_FILENAME"]."<br>";
      echo "\$_SERVER[\"REMOTE_PORT\"] = ".$_SERVER["REMOTE_PORT"]."<br>";
      echo "\$_SERVER[\"GATEWAY_INTERFACE\"] = ".$_SERVER["GATEWAY_INTERFACE"]."<br>";
      echo "\$_SERVER[\"SERVER_PROTOCOL\"] = ".$_SERVER["SERVER_PROTOCOL"]."<br>";
      echo "\$_SERVER[\"REQUEST_METHOD\"] = ".$_SERVER["REQUEST_METHOD"]."<br>";
      echo "\$_SERVER[\"QUERY_STRING\"] = ".$_SERVER["QUERY_STRING"]."<br>";
      echo "\$_SERVER[\"REQUEST_URI\"] = ".$_SERVER["REQUEST_URI"]."<br>";
      echo "\$_SERVER[\"SCRIPT_NAME\"] = ".$_SERVER["SCRIPT_NAME"]."<br>";
      echo "\$_SERVER[\"PHP_SELF\"] = ".$_SERVER["PHP_SELF"]."<br>";
      echo "\$_SERVER[\"REQUEST_TIME\"] = ".$_SERVER["REQUEST_TIME"]."<br>";
      echo "\$_SERVER[\"argv\"] = ".$_SERVER["argv"]."<br>";
      echo "\$_SERVER[\"argc\"] = ".$_SERVER["argc"]."<br>";
     ?>
</body>
</html>
}}}
Ref: http://lazybutexpert.com/how-to-create-system-variable-php/
!Create Round PHP
{{{
<!--
@krisnadev
http://lazybutexpert.com
-->
<!DOCTYPE HTML>
<html>
<head>
<title>round function</title>
</head>
<body>
     <?php
       echo round(3.4)."<br>";         // 3
       echo round(3.5)."<br>";         // 4
       echo round(3.6)."<br>";         // 4
       echo round(3.6, 0)."<br>";      // 4
       echo round(1.95583, 2)."<br>";  // 1.96
       echo round(1241757, -3)."<br>"; // 1242000
       echo round(5.045, 2)."<br>";    // 5.05
       echo round(5.055, 2)."<br>";    // 5.06
     ?>
</body>
</html>
}}}
Ref:http://lazybutexpert.com/how-to-create-round-php/
!number_format()

{{{
<!--
@krisnadev
http://lazybutexpert.com
-->
<!DOCTYPE HTML>
<html>
<head>
<title></title>
</head>
<body>
     <?php
       $number = 1234.56;
       echo number_format($number)."<br>";
       echo number_format($number, 2, ',', ' ')."<br>";
       $number = 1234.5678;
       echo number_format($number, 2, '.', '')."<br>";
      ?>
</body>
</html>
}}}
Ref:http://lazybutexpert.com/how-to-create-number_format-php/
!Today in Tamil
{{{
<!--
@krisnadev
http://lazybutexpert.com
-->
<!DOCTYPE HTML>
<html>
<head>
<title>Today in Tamil</title>
</head>
<body>
	<?php
             $Tamil_day["Sunday"]     = "ஞாயிறு";
             $Tamil_day["Monday"]     = "திங்கள்";
             $Tamil_day["Tuesday"]    = "செவ்வாய்";
             $Tamil_day["Wednesday"]  = "புதன்";
             $Tamil_day["Thursday"]   = "வியாழன்";
             $Tamil_day["Friday"]     = "வெள்ளி";
             $Tamil_day["Saturday"]   = "சனி";
 
             $Tamil_days = date("l");
             echo "Today's DAY in Tamil   ".$Tamil_day[$Tamil_days]."<BR>";
	?>
</body>
</html>
}}}
Ref: http://lazybutexpert.com/array-dengan-indeks-berupa-string-pada-php/
!PHP Radio Button
The PHP Radio Button is a component of the HTML delivery format, which is optional, but can only be selected in.

Syntax

{{{
<input type="radio" name="[name]" value="[value]">Option 1
<input type="radio" name="[name]" value="[value]">Option 2
 
$_POST["name"]; // Read value radio
}}}
''Example''
{{{
<!--
@krisnadev
http://lazybutexpert.com
-->
<!DOCTYPE HTML>
<html>
<head>
<title>radio button 1</title>
</head>
<body>
<form action="testc.php" method="post" name="form1">
Please select sex.<br>
  <input name="rdoSex" type="radio" value="Man">Man<br>
  <input name="rdoSex" type="radio" value="Woman">Woman<br>
<input name="btnSubmit" type="submit" value="Submit">
</form>
</body>
</html>
}}}
{{{
<!--
@krisnadev
http://lazybutexpert.com
-->
<!DOCTYPE HTML>
<html>
<head>
<title>radio button 2</title>
</head>
<body>
<?php
echo $_POST["rdoSex"];
?>
</body>
</html>
}}}
Ref:http://lazybutexpert.com/how-to-create-radio-button-php/
!PHP HTML & Table
{{{
<html>
<head>
<title></title>
</head>
<body>
<?php
$strSiteName = "lazybutexpert.com";
echo '
<table width="100%"  border="3">
  <tr>
    <td>'.$strSiteName.'</td>
    <td>lazybutexpert.com</td>
    <td>lazybutexpert.com</td>
  </tr>
  <tr>
    <td>'.$strSiteName.'</td>
    <td>lazybutexpert.com</td>
    <td>lazybutexpert.com</td>
  </tr>
  <tr>
    <td>'.$strSiteName.'</td>
    <td>lazybutexpert.com</td>
    <td>lazybutexpert.com</td>
  </tr>
</table>';
?>
</body>
</html>
}}}
{{{
<!--
@krisnadev
http://lazybutexpert.com
-->
<!DOCTYPE HTML>
<html>
<head>
<title>PHP Concat()</title>
</head>
<body>
     <?php
     $str1 = "x";
     $str2 = "y";
     $str3 = "z";
     $str4 = $str1.$str2.$str3;
     echo $str4;
     ?>
</body>
</html>
}}}
Ref: http://lazybutexpert.com/php-concat/
!Create tables
{{{

<!DOCTYPE HTML>
<html>
<head>
<title></title>
</head><body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt create table query execution
$sql = "CREATE TABLE persons(
    id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
    first_name VARCHAR(30) NOT NULL,
    last_name VARCHAR(30) NOT NULL,
    email VARCHAR(70) NOT NULL UNIQUE
)";
if(mysqli_query($link, $sql)){
    echo "Table created successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
</body>
</html>
}}}
Ref: https://www.tutorialrepublic.com/php-tutorial/php-mysql-create-table.php
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>Error Handling</title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Sara', 'Shan', 'saravana88au@gmail.com')";
if(mysqli_query($link, $sql)){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>Error Handling</title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Prepare an insert statement
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES (?, ?, ?)";
 
if($stmt = mysqli_prepare($link, $sql)){
    // Bind variables to the prepared statement as parameters
    mysqli_stmt_bind_param($stmt, "sss", $first_name, $last_name, $email);
    
    /* Set the parameters values and execute
    the statement again to insert another row */
    $first_name = "Hermione";
    $last_name = "Granger";
    $email = "hermionegranger@mail.com";
    mysqli_stmt_execute($stmt);
    
    /* Set the parameters values and execute
    the statement to insert a row */
    $first_name = "Ron";
    $last_name = "Weasley";
    $email = "ronweasley@mail.com";
    mysqli_stmt_execute($stmt);
    
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not prepare query: $sql. " . mysqli_error($link);
}
 
// Close statement
mysqli_stmt_close($stmt);
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
Ref: http://lazybutexpert.com/how-to-create-date_parse-php/
!Last Inserted ID
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title></title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Rona', 'Weasley', 'ronweasleya@mail.com')";
if(mysqli_query($link, $sql)){
    // Obtain last inserted id
    $last_id = mysqli_insert_id($link);
    echo "Records inserted successfully. Last inserted ID is: " . $last_id;
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
[img[https://img2.files.wordpress.com/2018/05/screenhunter-1661.jpg]]

<<<>>>
ERROR: Could not able to execute INSERT INTO persons (first_name, last_name, email) VALUES ('Rona', 'Weasley', 'ronweasleya@mail.com'). Duplicate entry 'ronweasleya@mail.com' for key 'email'
<<<>>>
[img[https://img2.files.wordpress.com/2018/05/screenhunter-1662.jpg?w=988]]
!Create Database
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title></title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt create database query execution
$sql = "CREATE DATABASE testdba";
if(mysqli_query($link, $sql)){
    echo "Database created successfully";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
!SELECT Query
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title></title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt select query execution
$sql = "SELECT * FROM persons";
if($result = mysqli_query($link, $sql)){
    if(mysqli_num_rows($result) > 0){
        echo "<table>";
            echo "<tr>";
                echo "<th>id</th>";
                echo "<th>first_name</th>";
                echo "<th>last_name</th>";
                echo "<th>email</th>";
            echo "</tr>";
        while($row = mysqli_fetch_array($result)){
            echo "<tr>";
                echo "<td>" . $row['id'] . "</td>";
                echo "<td>" . $row['first_name'] . "</td>";
                echo "<td>" . $row['last_name'] . "</td>";
                echo "<td>" . $row['email'] . "</td>";
            echo "</tr>";
        }
        echo "</table>";
        // Free result set
        mysqli_free_result($result);
    } else{
        echo "No records matching your query were found.";
    }
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
!WHERE Clause
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title></title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());    
}
 
// Attempt select query execution
$sql = "SELECT * FROM persons WHERE first_name='Sara'";
if($result = mysqli_query($link, $sql)){
    if(mysqli_num_rows($result) > 0){
        echo "<table>";
            echo "<tr>";
                echo "<th>id</th>";
                echo "<th>first_name</th>";
                echo "<th>last_name</th>";
                echo "<th>email</th>";
            echo "</tr>";
        while($row = mysqli_fetch_array($result)){
            echo "<tr>";
                echo "<td>" . $row['id'] . "</td>";
                echo "<td>" . $row['first_name'] . "</td>";
                echo "<td>" . $row['last_name'] . "</td>";
                echo "<td>" . $row['email'] . "</td>";
            echo "</tr>";
        }
        echo "</table>";
        // Close result set
        mysqli_free_result($result);
    } else{
        echo "No records matching your query were found.";
    }
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
!Limit Clause
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>Limit Clause</title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt select query execution
$sql = "SELECT * FROM persons LIMIT 3";
if($result = mysqli_query($link, $sql)){
    if(mysqli_num_rows($result) > 0){
        echo "<table>";
            echo "<tr>";
                echo "<th>id</th>";
                echo "<th>first_name</th>";
                echo "<th>last_name</th>";
                echo "<th>email</th>";
            echo "</tr>";
        while($row = mysqli_fetch_array($result)){
            echo "<tr>";
                echo "<td>" . $row['id'] . "</td>";
                echo "<td>" . $row['first_name'] . "</td>";
                echo "<td>" . $row['last_name'] . "</td>";
                echo "<td>" . $row['email'] . "</td>";
            echo "</tr>";
        }
        echo "</table>";
        // Close result set
        mysqli_free_result($result);
    } else{
        echo "No records matching your query were found.";
    }
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
!ORDER BY Clause
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>ORDER BY Clause</title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt select query execution with order by clause
$sql = "SELECT * FROM persons ORDER BY first_name";
if($result = mysqli_query($link, $sql)){
    if(mysqli_num_rows($result) > 0){
        echo "<table>";
            echo "<tr>";
                echo "<th>id</th>";
                echo "<th>first_name</th>";
                echo "<th>last_name</th>";
                echo "<th>email</th>";
            echo "</tr>";
        while($row = mysqli_fetch_array($result)){
            echo "<tr>";
                echo "<td>" . $row['id'] . "</td>";
                echo "<td>" . $row['first_name'] . "</td>";
                echo "<td>" . $row['last_name'] . "</td>";
                echo "<td>" . $row['email'] . "</td>";
            echo "</tr>";
        }
        echo "</table>";
        // Close result set
        mysqli_free_result($result);
    } else{
        echo "No records matching your query were found.";
    }
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
Ref:https://www.tutorialrepublic.com/php-tutorial/php-mysql-order-by-clause.php
!UPDATE Query
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>UPDATE Query</title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt update query execution
$sql = "UPDATE persons SET email='peterparker_new@mail.com' WHERE id=1";
if(mysqli_query($link, $sql)){
    echo "Records were updated successfully.";
} else {
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
!DELETE Query
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>DELETE Query</title>
	</head>
    <body>
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "sara", "Pa55word", "testdb");
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
 
// Attempt delete query execution
$sql = "DELETE FROM persons WHERE first_name='Rona'";
if(mysqli_query($link, $sql)){
    echo "Records were deleted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Close connection
mysqli_close($link);
?>
    </body>
</html>
}}}
''CRUD'' is an acronym for ''C''reate, ''R''ead, ''U''pdate, and ''D''elete. ''CRUD'' operations are basic data manipulation for database.
!Database Table
{{{
CREATE TABLE employees (
    id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(100) NOT NULL,
    address VARCHAR(255) NOT NULL,
    salary INT(10) NOT NULL
);
}}}
Config File (config.php)  [[php8033a]]
Landing Page (index.php)   [[php8033b]]
Create Page (create.php)   [[php8033c]] 
Read Page  (read.php)      [[php8033d]]
Update Page (update.php)    [[php8033e]]
Delete Page   (delete.php)     [[php8033f]]
Error Page     (error.php)        [[php8033g]]
!Config File
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>config</title>
	</head>
    <body>
<?php
/* Database credentials. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'sara');
define('DB_PASSWORD', 'Pa55word');
define('DB_NAME', 'testdb');
 
/* Attempt to connect to MySQL database */
$link = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
 
// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
?>
    </body>
</html>
}}}
!Landing Page
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Browser Platform</title>
</head>
<body>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Dashboard</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.js"></script>
    <style type="text/css">
        .wrapper{
            width: 650px;
            margin: 0 auto;
        }
        .page-header h2{
            margin-top: 0;
        }
        table tr td:last-child a{
            margin-right: 15px;
        }
    </style>
    <script type="text/javascript">
        $(document).ready(function(){
            $('[data-toggle="tooltip"]').tooltip();   
        });
    </script>
</head>
<body>
    <div class="wrapper">
        <div class="container-fluid">
            <div class="row">
                <div class="col-md-12">
                    <div class="page-header clearfix">
                        <h2 class="pull-left">Employees Details</h2>
                        <a href="create.php" class="btn btn-success pull-right">Add New Employee</a>
                    </div>
                    <?php
                    // Include config file
                    require_once 'config.php';
                    
                    // Attempt select query execution
                    $sql = "SELECT * FROM employees";
                    if($result = mysqli_query($link, $sql)){
                        if(mysqli_num_rows($result) > 0){
                            echo "<table class='table table-bordered table-striped'>";
                                echo "<thead>";
                                    echo "<tr>";
                                        echo "<th>#</th>";
                                        echo "<th>Name</th>";
                                        echo "<th>Address</th>";
                                        echo "<th>Salary</th>";
                                        echo "<th>Action</th>";
                                    echo "</tr>";
                                echo "</thead>";
                                echo "<tbody>";
                                while($row = mysqli_fetch_array($result)){
                                    echo "<tr>";
                                        echo "<td>" . $row['id'] . "</td>";
                                        echo "<td>" . $row['name'] . "</td>";
                                        echo "<td>" . $row['address'] . "</td>";
                                        echo "<td>" . $row['salary'] . "</td>";
                                        echo "<td>";
                                            echo "<a href='read.php?id=". $row['id'] ."' title='View Record' data-toggle='tooltip'><span class='glyphicon glyphicon-eye-open'></span></a>";
                                            echo "<a href='update.php?id=". $row['id'] ."' title='Update Record' data-toggle='tooltip'><span class='glyphicon glyphicon-pencil'></span></a>";
                                            echo "<a href='delete.php?id=". $row['id'] ."' title='Delete Record' data-toggle='tooltip'><span class='glyphicon glyphicon-trash'></span></a>";
                                        echo "</td>";
                                    echo "</tr>";
                                }
                                echo "</tbody>";                            
                            echo "</table>";
                            // Free result set
                            mysqli_free_result($result);
                        } else{
                            echo "<p class='lead'><em>No records were found.</em></p>";
                        }
                    } else{
                        echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
                    }
 
                    // Close connection
                    mysqli_close($link);
                    ?>
                </div>
            </div>        
        </div>
    </div>
</body>
</html>
</body>
</html>
}}}
''Create Page'' (create.php)'
build the ''Create functionality'' for the CRUD application
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Browser Platform</title>
</head>
<body>
<?php
// Include config file
require_once 'config.php';
 
// Define variables and initialize with empty values
$name = $address = $salary = "";
$name_err = $address_err = $salary_err = "";
 
// Processing form data when form is submitted
if($_SERVER["REQUEST_METHOD"] == "POST"){
    // Validate name
    $input_name = trim($_POST["name"]);
    if(empty($input_name)){
        $name_err = "Please enter a name.";
    } elseif(!filter_var(trim($_POST["name"]), FILTER_VALIDATE_REGEXP, array("options"=>array("regexp"=>"/^[a-zA-Z'-.\s ]+$/")))){
        $name_err = 'Please enter a valid name.';
    } else{
        $name = $input_name;
    }
    
    // Validate address
    $input_address = trim($_POST["address"]);
    if(empty($input_address)){
        $address_err = 'Please enter an address.';     
    } else{
        $address = $input_address;
    }
    
    // Validate salary
    $input_salary = trim($_POST["salary"]);
    if(empty($input_salary)){
        $salary_err = "Please enter the salary amount.";     
    } elseif(!ctype_digit($input_salary)){
        $salary_err = 'Please enter a positive integer value.';
    } else{
        $salary = $input_salary;
    }
    
    // Check input errors before inserting in database
    if(empty($name_err) && empty($address_err) && empty($salary_err)){
        // Prepare an insert statement
        $sql = "INSERT INTO employees (name, address, salary) VALUES (?, ?, ?)";
         
        if($stmt = mysqli_prepare($link, $sql)){
            // Bind variables to the prepared statement as parameters
            mysqli_stmt_bind_param($stmt, "sss", $param_name, $param_address, $param_salary);
            
            // Set parameters
            $param_name = $name;
            $param_address = $address;
            $param_salary = $salary;
            
            // Attempt to execute the prepared statement
            if(mysqli_stmt_execute($stmt)){
                // Records created successfully. Redirect to landing page
                header("location: index.php");
                exit();
            } else{
                echo "Something went wrong. Please try again later.";
            }
        }
         
        // Close statement
        mysqli_stmt_close($stmt);
    }
    
    // Close connection
    mysqli_close($link);
}
?>
 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Create Record</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.css">
    <style type="text/css">
        .wrapper{
            width: 500px;
            margin: 0 auto;
        }
    </style>
</head>
<body>
    <div class="wrapper">
        <div class="container-fluid">
            <div class="row">
                <div class="col-md-12">
                    <div class="page-header">
                        <h2>Create Record</h2>
                    </div>
                    <p>Please fill this form and submit to add employee record to the database.</p>
                    <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
                        <div class="form-group <?php echo (!empty($name_err)) ? 'has-error' : ''; ?>">
                            <label>Name</label>
                            <input type="text" name="name" class="form-control" value="<?php echo $name; ?>">
                            <span class="help-block"><?php echo $name_err;?></span>
                        </div>
                        <div class="form-group <?php echo (!empty($address_err)) ? 'has-error' : ''; ?>">
                            <label>Address</label>
                            <textarea name="address" class="form-control"><?php echo $address; ?></textarea>
                            <span class="help-block"><?php echo $address_err;?></span>
                        </div>
                        <div class="form-group <?php echo (!empty($salary_err)) ? 'has-error' : ''; ?>">
                            <label>Salary</label>
                            <input type="text" name="salary" class="form-control" value="<?php echo $salary; ?>">
                            <span class="help-block"><?php echo $salary_err;?></span>
                        </div>
                        <input type="submit" class="btn btn-primary" value="Submit">
                        <a href="index.php" class="btn btn-default">Cancel</a>
                    </form>
                </div>
            </div>        
        </div>
    </div>
</body>
</html>
</body>
</html>{

}}}
Read Page (read.php)
''Read functionality'' for the CRUD application
{{{
<?php
// Check existence of id parameter before processing further
if(isset($_GET["id"]) && !empty(trim($_GET["id"]))){
    // Include config file
    require_once 'config.php';
    
    // Prepare a select statement
    $sql = "SELECT * FROM employees WHERE id = ?";
    
    if($stmt = mysqli_prepare($link, $sql)){
        // Bind variables to the prepared statement as parameters
        mysqli_stmt_bind_param($stmt, "i", $param_id);
        
        // Set parameters
        $param_id = trim($_GET["id"]);
        
        // Attempt to execute the prepared statement
        if(mysqli_stmt_execute($stmt)){
            $result = mysqli_stmt_get_result($stmt);
    
            if(mysqli_num_rows($result) == 1){
                /* Fetch result row as an associative array. Since the result set
                contains only one row, we don't need to use while loop */
                $row = mysqli_fetch_array($result, MYSQLI_ASSOC);
                
                // Retrieve individual field value
                $name = $row["name"];
                $address = $row["address"];
                $salary = $row["salary"];
            } else{
                // URL doesn't contain valid id parameter. Redirect to error page
                header("location: error.php");
                exit();
            }
            
        } else{
            echo "Oops! Something went wrong. Please try again later.";
        }
    }
     
    // Close statement
    mysqli_stmt_close($stmt);
    
    // Close connection
    mysqli_close($link);
} else{
    // URL doesn't contain id parameter. Redirect to error page
    header("location: error.php");
    exit();
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>View Record</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.css">
    <style type="text/css">
        .wrapper{
            width: 500px;
            margin: 0 auto;
        }
    </style>
</head>
<body>
    <div class="wrapper">
        <div class="container-fluid">
            <div class="row">
                <div class="col-md-12">
                    <div class="page-header">
                        <h1>View Record</h1>
                    </div>
                    <div class="form-group">
                        <label>Name</label>
                        <p class="form-control-static"><?php echo $row["name"]; ?></p>
                    </div>
                    <div class="form-group">
                        <label>Address</label>
                        <p class="form-control-static"><?php echo $row["address"]; ?></p>
                    </div>
                    <div class="form-group">
                        <label>Salary</label>
                        <p class="form-control-static"><?php echo $row["salary"]; ?></p>
                    </div>
                    <p><a href="index.php" class="btn btn-primary">Back</a></p>
                </div>
            </div>        
        </div>
    </div>
</body>
</html>
}}}
''Update functionality'' for CRUD application
{{{
<?php
// Include config file
require_once 'config.php';
 
// Define variables and initialize with empty values
$name = $address = $salary = "";
$name_err = $address_err = $salary_err = "";
 
// Processing form data when form is submitted
if(isset($_POST["id"]) && !empty($_POST["id"])){
    // Get hidden input value
    $id = $_POST["id"];
    
    // Validate name
    $input_name = trim($_POST["name"]);
    if(empty($input_name)){
        $name_err = "Please enter a name.";
    } elseif(!filter_var(trim($_POST["name"]), FILTER_VALIDATE_REGEXP, array("options"=>array("regexp"=>"/^[a-zA-Z'-.\s ]+$/")))){
        $name_err = 'Please enter a valid name.';
    } else{
        $name = $input_name;
    }
    
    // Validate address address
    $input_address = trim($_POST["address"]);
    if(empty($input_address)){
        $address_err = 'Please enter an address.';     
    } else{
        $address = $input_address;
    }
    
    // Validate salary
    $input_salary = trim($_POST["salary"]);
    if(empty($input_salary)){
        $salary_err = "Please enter the salary amount.";     
    } elseif(!ctype_digit($input_salary)){
        $salary_err = 'Please enter a positive integer value.';
    } else{
        $salary = $input_salary;
    }
    
    // Check input errors before inserting in database
    if(empty($name_err) && empty($address_err) && empty($salary_err)){
        // Prepare an insert statement
        $sql = "UPDATE employees SET name=?, address=?, salary=? WHERE id=?";
         
        if($stmt = mysqli_prepare($link, $sql)){
            // Bind variables to the prepared statement as parameters
            mysqli_stmt_bind_param($stmt, "sssi", $param_name, $param_address, $param_salary, $param_id);
            
            // Set parameters
            $param_name = $name;
            $param_address = $address;
            $param_salary = $salary;
            $param_id = $id;
            
            // Attempt to execute the prepared statement
            if(mysqli_stmt_execute($stmt)){
                // Records updated successfully. Redirect to landing page
                header("location: index.php");
                exit();
            } else{
                echo "Something went wrong. Please try again later.";
            }
        }
         
        // Close statement
        mysqli_stmt_close($stmt);
    }
    
    // Close connection
    mysqli_close($link);
} else{
    // Check existence of id parameter before processing further
    if(isset($_GET["id"]) && !empty(trim($_GET["id"]))){
        // Get URL parameter
        $id =  trim($_GET["id"]);
        
        // Prepare a select statement
        $sql = "SELECT * FROM employees WHERE id = ?";
        if($stmt = mysqli_prepare($link, $sql)){
            // Bind variables to the prepared statement as parameters
            mysqli_stmt_bind_param($stmt, "i", $param_id);
            
            // Set parameters
            $param_id = $id;
            
            // Attempt to execute the prepared statement
            if(mysqli_stmt_execute($stmt)){
                $result = mysqli_stmt_get_result($stmt);
    
                if(mysqli_num_rows($result) == 1){
                    /* Fetch result row as an associative array. Since the result set
                    contains only one row, we don't need to use while loop */
                    $row = mysqli_fetch_array($result, MYSQLI_ASSOC);
                    
                    // Retrieve individual field value
                    $name = $row["name"];
                    $address = $row["address"];
                    $salary = $row["salary"];
                } else{
                    // URL doesn't contain valid id. Redirect to error page
                    header("location: error.php");
                    exit();
                }
                
            } else{
                echo "Oops! Something went wrong. Please try again later.";
            }
        }
        
        // Close statement
        mysqli_stmt_close($stmt);
        
        // Close connection
        mysqli_close($link);
    }  else{
        // URL doesn't contain id parameter. Redirect to error page
        header("location: error.php");
        exit();
    }
}
?>
 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Update Record</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.css">
    <style type="text/css">
        .wrapper{
            width: 500px;
            margin: 0 auto;
        }
    </style>
</head>
<body>
    <div class="wrapper">
        <div class="container-fluid">
            <div class="row">
                <div class="col-md-12">
                    <div class="page-header">
                        <h2>Update Record</h2>
                    </div>
                    <p>Please edit the input values and submit to update the record.</p>
                    <form action="<?php echo htmlspecialchars(basename($_SERVER['REQUEST_URI'])); ?>" method="post">
                        <div class="form-group <?php echo (!empty($name_err)) ? 'has-error' : ''; ?>">
                            <label>Name</label>
                            <input type="text" name="name" class="form-control" value="<?php echo $name; ?>">
                            <span class="help-block"><?php echo $name_err;?></span>
                        </div>
                        <div class="form-group <?php echo (!empty($address_err)) ? 'has-error' : ''; ?>">
                            <label>Address</label>
                            <textarea name="address" class="form-control"><?php echo $address; ?></textarea>
                            <span class="help-block"><?php echo $address_err;?></span>
                        </div>
                        <div class="form-group <?php echo (!empty($salary_err)) ? 'has-error' : ''; ?>">
                            <label>Salary</label>
                            <input type="text" name="salary" class="form-control" value="<?php echo $salary; ?>">
                            <span class="help-block"><?php echo $salary_err;?></span>
                        </div>
                        <input type="hidden" name="id" value="<?php echo $id; ?>"/>
                        <input type="submit" class="btn btn-primary" value="Submit">
                        <a href="index.php" class="btn btn-default">Cancel</a>
                    </form>
                </div>
            </div>        
        </div>
    </div>
</body>
</html>
}}}
''Delete functionality'' for  CRUD application
{{{
<?php
// Process delete operation after confirmation
if(isset($_POST["id"]) && !empty($_POST["id"])){
    // Include config file
    require_once 'config.php';
    
    // Prepare a select statement
    $sql = "DELETE FROM employees WHERE id = ?";
    
    if($stmt = mysqli_prepare($link, $sql)){
        // Bind variables to the prepared statement as parameters
        mysqli_stmt_bind_param($stmt, "i", $param_id);
        
        // Set parameters
        $param_id = trim($_POST["id"]);
        
        // Attempt to execute the prepared statement
        if(mysqli_stmt_execute($stmt)){
            // Records deleted successfully. Redirect to landing page
            header("location: index.php");
            exit();
        } else{
            echo "Oops! Something went wrong. Please try again later.";
        }
    }
     
    // Close statement
    mysqli_stmt_close($stmt);
    
    // Close connection
    mysqli_close($link);
} else{
    // Check existence of id parameter
    if(empty(trim($_GET["id"]))){
        // URL doesn't contain id parameter. Redirect to error page
        header("location: error.php");
        exit();
    }
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>View Record</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.css">
    <style type="text/css">
        .wrapper{
            width: 500px;
            margin: 0 auto;
        }
    </style>
</head>
<body>
    <div class="wrapper">
        <div class="container-fluid">
            <div class="row">
                <div class="col-md-12">
                    <div class="page-header">
                        <h1>Delete Record</h1>
                    </div>
                    <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
                        <div class="alert alert-danger fade in">
                            <input type="hidden" name="id" value="<?php echo trim($_GET["id"]); ?>"/>
                            <p>Are you sure you want to delete this record?</p><br>
                            <p>
                                <input type="submit" value="Yes" class="btn btn-danger">
                                <a href="index.php" class="btn btn-default">No</a>
                            </p>
                        </div>
                    </form>
                </div>
            </div>        
        </div>
    </div>
</body>
</html>
}}}
This page will be displayed if request is invalid i.e. if id parameter is missing from the URL query string or it is not valid
{{{
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Error</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.css">
    <style type="text/css">
        .wrapper{
            width: 750px;
            margin: 0 auto;
        }
    </style>
</head>
<body>
    <div class="wrapper">
        <div class="container-fluid">
            <div class="row">
                <div class="col-md-12">
                    <div class="page-header">
                        <h1>Invalid Request</h1>
                    </div>
                    <div class="alert alert-danger fade in">
                        <p>Sorry, you've made an invalid request. Please <a href="index.php" class="alert-link">go back</a> and try again.</p>
                    </div>
                </div>
            </div>        
        </div>
    </div>
</body>
</html>
}}}
[[Form Validation from example |php8008]]
[[Insert record|php8034a]]-- sample with 2 fields
[[View Records|php8034b]]
[[ViewRecords in Table format |php8034c]]
[[login |php8034d]]
!INSERT records after validation the input
{{{
<!DOCTYPE html>
<html>
<head>
	<title>Register</title>
</head>
<body>
<?php
if(isset($_POST['btncheck'])){
	$name=$_POST['userName'];
	$address=$_POST['address'];
	if($name=="")
	 {
		echo "Please Enter Your Name";
	}
	elseif($address=="")
	 {
		echo "please enter your Address";
	}
	include('conn.php');
	$SQL="insert into student(Name,Address) values('$name','$address')";	
    $result = mysqli_query($conn,$SQL);

//Name|Gender|DOB|Age|telephone|email|Course|color|username|password|student_id|Address
}
?>
<h1 align="center"><font color="skyblue"> Student Registration Form	</font></h1>

<form name="login_Form" id="" method="post" action=""> 
<table align="center">
	<tr>
	<td>User Name</td>
	<td><input type="text" name="userName" required=""></td>
	</tr>

	<tr>
	<td>Address</td>
	<td><input type="text" name="address" required=""></td>
	</tr>

	<tr>
	<td><input type="submit" name="btncheck" value="Register"></td>
	</tr>

</table>




</body>
</html>
}}}
!View records
{{{
<?php
include("conn.php");
$sql="select * from student";
$rslt=mysqli_query($conn,$sql);
while ($row=mysqli_fetch_array($rslt))
{
	echo $row['Name'] ."  | ". $row['Address'];
	echo "<br>";
}
?>
}}}
!view records in table format
{{{
<?php
$con=mysqli_connect("localhost","root","","testdb");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$SQL="SELECT last_name,email FROM persons ORDER BY last_name";
$rslt=mysqli_query($con,$SQL);

if($rslt = mysqli_query($con,$SQL)){
    if(mysqli_num_rows($rslt) >0){
        echo "<table border=1>";
            echo "<tr>";
                echo "<th>Last Name</th>";
                echo "<th>email</th>";
            echo "</tr>";
        while($row = mysqli_fetch_array($rslt)){
            echo "<tr>";
                echo "<td>" . $row['last_name'] . "</td>";
                echo "<td>" . $row['email'] . "</td>";
            echo "</tr>";
        }
        echo "</table>";
    }
}

// Free result set
mysqli_free_result($rslt);

mysqli_close($con);
?>
}}}
!login
{{{
<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>

<?php
if(isset($_POST['btncheck'])){
	$name=$_POST['userName'];
	$password=$_POST['password'];

	include('conn.php');
	$sqlCmd="Select * from student where userName ='$name' AND password = '$password' ";
    $result = mysqli_query($conn,$sqlCmd);
    $nouser=mysqli_num_rows($result);
    if($nouser>=1){
  	  echo "well come";
    }
    else
    {
  	  echo "UnAuthorized login";
    }
}
?>

<form name="login_Form" id="" method="post" action=""> 
<table align="center">
	<tr>
	<td>User Name</td>
	<td><input type="text" name="userName" required=""></td>
	</tr>

	<tr>
	<td>Password</td>
	<td><input type="password" name="password" required=""></td>
	</tr>

	<tr>
	<td><input type="submit" name="btncheck" value="LOGGIN"></td>
	</tr>

</table>




</form>
</body>
</html>
}}}
!another example create Table & insert data
{{{
<?php
$db_host = 'localhost'; // Host
$db_user = 'root'; // Username
$db_pass = ''; // Password
$db_name = 'winsysdata'; // Database
 
$conn = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
if (!$conn) {
    die('Can\'t connect to MySQL: ' . mysqli_connect_error());   
}
 
$table_name = 'sales';
 
$sql = 'CREATE TABLE IF NOT EXISTS `' . $table_name . '` (
          `trans_id` int(11) NOT NULL AUTO_INCREMENT,
          `prod_id` int(11) NOT NULL,
          `trans_date` date NOT NULL,
          `qty` tinyint(4) NOT NULL,
          `amount` int(11) NOT NULL,
          `cust_id` int(11) NOT NULL,
          PRIMARY KEY (`trans_id`),
          KEY `prod_id` (`prod_id`)
        ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1';
         
$query = mysqli_query($conn, $sql);
 
if (!$query) {
    die ('ERROR: Unable to create ' . $table_name . ' table: ' . mysqli_error($conn));
}
 
echo 'The ' . $table_name . ' table has been successfully created<br/>';
 
$sql = "INSERT INTO `$table_name` (`trans_id`, `prod_id`, `trans_date`, `qty`, `amount`, `cust_id`) 
        VALUES  (1, 100, '2016-09-20', 8, 265, 1),
                (2, 100, '2016-10-11', 3, 270, 2),
                (3, 101, '2016-08-17', 8, 250, 2),
                (4, 101, '2016-08-24', 12, 380, 2),
                (5, 101, '2016-05-10', 12, 250, 1),
                (6, 101, '2016-05-04', 11, 375, 1),
                (7, 101, '2016-07-15', 3, 265, 1),
                (8, 100, '2016-05-19', 4, 250, 1),
                (9, 101, '2016-06-17', 12, 255, 2),
                (10, 100, '2016-09-11', 12, 280, 1)";
         
$query = mysqli_query($conn, $sql);
 
if (!$query) {
    die ('ERROR: Unable to insert data to ' . $table_name . ' table: ' . mysqli_error($conn));
}
 
echo 'Data successfully inserted on ' . $table_name . ' table';
}}}
Ref: http://webdevzoom.com/retrieve-data-from-mysql-database-using-php/
!Student Registration
{{{

<!DOCTYPE html>
<html>
<head>
	<title>Register</title>
</head>
<body>
	<marquee bgcolor="#FFFFFF"
    direction="left" scrollamount="5" width="700" height="30">
<font color=red> Web programming - Student Reigstration </font>  </marquee> <br>

<h1 align="center"><font color="skyblue">
Student Regetration Form	

</font></h1>

<?php
if (isset($_POST['btnsubmit'])) 
{
	$name=$_POST['Name'];
	$Address=$_POST['add'];
	$Gender=$_POST['gender'];
	$DOB=$_POST['date'];
	$Age=$_POST['age'];
	$TP=$_POST['phone'];
	$Email=$_POST['email'];
	$Course=$_POST['Courses'];
	$username=$_POST['username'];
	$password1=$_POST['usepassword1'];
	$password2=$_POST['usepassword2'];

	if ($name=="")
	 {
		echo "Please Enter Your Name";
	}
	elseif ($Address=="")
	 {
		echo "please enter your Address";
	}
	elseif ($Gender=="") {
		echo "please check box";
	}
	elseif ($DOB=="") {echo "please enter your date of birth";
	}
	elseif ($Age=="") {echo "please enter your age";
	}
	elseif ($TP=="") {echo "please enter valid phone number";
	}
	elseif ($Email=="") {echo "please enter valid Email Address";
	}
	elseif ($username=="") {echo "please enter username";
	}
	elseif ($password1=="") {echo "please enter the password";
	}
	elseif ($password2=="") {echo "please enter the Confirm password";}

		elseif ($password1!=$password2) {
		echo "please enter same password";
		}
		else{
			include ("conn.php");
	        $sql="insert into student(Name,Address,DOB,Age,telephone,email,Course,username,password) values('$name','$Address','$DOB','$Age','$TP','$Email','$Course','$username','$password1')";	
			if(mysqli_query($conn,$sql))			{

	         echo "ok";
			}
		}
}	
?>

<form form name="Stdent Reg" id="stuReg" method="POST" action="">
	<table align="center" bgcolor="silver">

	<tr>
		<td align="left"><label>Name</label></td><td></td>
		<td align="left"><input type="textbox" name="Name" value=""></td>
	</tr>
	<tr>
		<td align="left"><label>Address</label></td><td></td>
		<td align="left"><textarea name="add"></textarea></td>
	</tr>
	<tr>
		<td align="left"><label>Gender</label></td><td></td>
		<td align="left"> 
			<label>Male</label><input type="radio" name="gender" value="male" >
			<label>Female</label><input type="radio" name="gender" value="female">
        </td>
	</tr>
	<tr>
		<td align="left"><label>DOB</label></td><td></td>
		<td align="left"><input type="Date" name="date" value=""></td>
	</tr>
    <tr> 
		<td align="left"><label>Age</label></td><td></td>
		<td align="left"><input type="number" name="age" value=""></td	</tr>
	<tr>
		<td align="left"><label>TP</label></td><td></td>
		<td align="left"><input type="textbox" name="phone" value=""></td>
	</tr>
	<tr>
		<td align="left"><label>Email</label></td><td></td>
		<td align="left"><input type="***@***" name="email" value=""></td>
	</tr>
     <tr>
		<td align="left"> <label>Course</label></td><td></td>
		<td align="left">   
     		<label>Web Eng </label><input type="checkbox" name="Courses" value="crsweb" >
	    	<label>PHP</label><input type="checkbox" name="Courses"  value="crsphp" >
		    <label>MY SQL </label><input type="checkbox" name="Courses"   value="crsmysql">
        </td>
     </tr>
     <tr>
		<td align="left"> <label>Colors</label></td><td></td>
		<td align="left">   
		   <label>Select Color </label><input type="color" name="Courses" value="crsweb" >
		</td>
        </tr>
	<tr  >
		<td align="left"> <label>User Name</label></td><td></td>
		<td align="left">   <input type="textbox" name="username" value="" ></td>
    </tr>
    <tr  >
		<td align="left"> <label>User password</label></td><td></td>
		<td align="left">   <input type="textbox" name="usepassword1" value=""></td>
     </tr>
	<tr>
		<td align="left"> <label>Confirm Password</label></td><td></td>
		<td align="left">   <input type="password" name="usepassword2"  ></td>
     </tr>
      <td><input type="submit" name="btnsubmit" value="Register"></td>
	</tr>
</table>
</form>
</body>
</html>
}}}
!View Tables
{{{
<?php 
include ("Conn.php");
$sql="SELECT * FROM student";
$result = mysqli_query($conn,$sql);
   echo "<table border=1 width=750 > <tr><td> NAME </td> <td> ADDRESS </td> <td> GENDER </td><td> AGE </td><td>  DATE OF BIRTH </td><td> TELEPHONE #</td><td> EMAIL ADDRESS</td><td> COURSE </td></tr>";
while ($row=mysqli_fetch_array($result)) {
	echo "<tr><td>".$row['Name']."</td> <td>".$row['Address']."</td><td>".$row['Gender']."</td> <td>".$row['Age']."</td> <td>".$row['DOB']."</td> <td>".$row['telephone']."</td> <td>".$row['email']."</td> <td>".$row['Course']."</td> </tr>";
}
echo "</table><br>"
?>
}}}
login Method 1
{{{
<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>

<?php
if(isset($_POST['btncheck'])){

	$username=$_POST['username'];
	$password=$_POST['password'];
	 if (($username=="") || ($password="")) 
 	   {
 	    echo "Plese enter your login details";
 	   }
 	   else
 	   {
    	include('conn.php');
	    $sqlCmd="select * from student where username =$username AND password = $password ";
        $result = mysqli_query($conn,$sqlCmd);
        $nouser=mysqli_num_rows($result);
        //ho $nouser;
        if($nouser>=1){
  	        echo "well come";
        }
        else
           {
  	         echo "bye";
           }
		}		
}

?>

<form name="login_Form" id="" method="post" action=""> 

<table align="center">
	<tr>
	<td>User Name</td>
	
	<td><input type="text" name="username" required=""></td>

	</tr>
	<tr>
	
	<td>Password</td>
	<td><input type="password" name="password" required=""></td>

	</tr>

	<tr>

	
	<td><input type="submit" name="btncheck" value="LOGGIN"></td>

	</tr>

</table>




</form>
</body>
</html>
}}}

ERROR: Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\no\saf\login.php on line 22
bye
Login Method 2
{{{
<?php
if (isset($_POST['btnsubmit'])){
	$username=$_POST['userName'];
	$password=$_POST['userpassword1'];
	if ($username=="")
	 {
		echo "Please Enter user name";
	}
	elseif ($password=="")
	 {
		echo "please enter your Password";
	}
	else include("conn.php");
    $SQL="select username, password from student where username='$username' AND password='$password'";
    $rslt = mysqli_query($conn,$SQL);
if($rslt = mysqli_query($conn,$SQL)){
	if(username==$username){
		if(password==$passsword){
//			ehco "You are allowed to login";
		}
	}
	else
	{
	echo "Unauthorised login";
	}

}
}
?>

<form form name="Stdent Reg" id="stuReg" method="POST" action="">
	<table align="center" bgcolor="silver">

	<tr>
		<td align="left"><label>Name</label></td>
		<td></td>
		<td align="left"><input type="textbox" name="userName" value="">
     </td>
	</tr>
    <tr  >
		<td align="left"> <label>User password</label></td>
		<td></td>
		<td align="left">   <input type="textbox" name="userpassword1" value=""  >
     </td>
     </tr>	
      <td>
      	<input type="submit" name="btnsubmit" value="Register">
      </td>
	</tr>  

	</table>
	    
}}}

ERROR: Notice: Use of undefined constant username - assumed 'username' in C:\xampp\htdocs\no\new\login.php on line 17
Unauthorised login
!login Basic
{{{
<?php
Session_Start();
?>
<!DOCTYPE HTML>
<html>
<head>
<title></title>
</head>
<body>
<?php
  if(isset($_POST['btnsubmit'])){
	$name=$_POST['userName'];

	$password=$_POST['userpassword'];
	if ($name=="")
		{
			echo "Please Enter user name";
		}
	elseif($password=="")
		{
			echo "please enter your Password";
		}
	else {
			include('conn.php');
			$sqlCmd="Select * from student where
			 username='$name' AND password='$password'";
		    $result = mysqli_query($conn,$sqlCmd);
		    $nouser=mysqli_num_rows($result);
		    if($nouser>=1){
		  	  echo "well come";
		    }
		    else
		    {
		  	  echo "UnAuthorized login";
		    }
}
}
?>

<form form name="Stdent Reg" id="stuReg" method="POST" action="">
	<table align="center" bgcolor="silver">

	<tr>
		<td align="left"><label>Name</label></td>
		<td></td>
		<td align="left"><input type="textbox" name="userName" value="">
     </td>
	</tr>
    <tr  >
		<td align="left"> <label>User password</label></td>
		<td></td>
		<td align="left">   <input type="textbox" name="userpassword" value=""  >
     </td>
     </tr>	
      <td>
      	<input type="submit" name="btnsubmit" value="Register">
      </td>
	</tr>  
	</table>
	</form>	
	</body>
	</html>
}}}
construct 
{{{
 __construct
}}}
{{{
__construct is always called when creating new objects or they are invoked when initialization 
takes place.it is suitable for any initialization that the object may need before it is used. 
__construct method is the first method executed in class.
}}}
{{{
<?php
class Cube1 {

	private $length;
	private $depth;
	private $height; 
	
	public function __construct() {
		$this->length = 10;
		$this->depth = 10;
		$this->height = 10;
	}
	
	public function getVolume() {
		return ($this->length * $this->depth * $this->height);
	}
}

?>
<?php
$box=new Cube1();
echo $box->getVolume();
?>
}}}
Ref: https://ebckurera.wordpress.com/2013/03/18/__construct-in-php-oop-with-php/
[[$_SERVER['PHP_SELF']|php8101]]
[[System Variable PHP|php8102]]
!$_SERVER["PHP_SELF"]
What is the $_SERVER["PHP_SELF"] variable?

The $_SERVER["PHP_SELF"] is a super global variable that returns the filename of the currently executing script.

So, the $_SERVER["PHP_SELF"] sends the submitted form data to the page itself, instead of jumping to a different page. This way, the user will get error messages on the same page as the form.

[[example usage|php8007]]
!PHP System Variable
''PHP System Variable Variable Displays the Value of PHP / Server. PHP Server ($ _SERVER, $ HTTP_SERVER_VARS) R
eads System Variables System variables.''

Syntax
{{{
<?php
$_SERVER["var"];
?>
}}}

*''DOCUMENT_ROOT'' show Path Root Directory Home
*''GATEWAY_INTERFACE''  Show the Cgi interface value.
*''HTTP_ACCEPT_LANGUAGE''  language used.
*''HTTP_CONNECTION''  Connection status
*''HTTP_USER_AGENT''  Show the type of incoming programs such as IE.
*''PATH_INFO''  show document name
*''PATH_TRANSLATED''  Displays the path of the document.
*''QUERY_STRING''  shows values ​​in Query String.
*''REMOTE_ADDR''  shows the IP address of the incoming machine.
*''REMOTE_PORT''  shows incoming machine port.
*''REQUEST_METHOD''  Show receipts as Get or Post.
*''SCRIPT_NAME''  shows document title.
*''SERVER_NAME''  shows the server name.
*''SERVER_PORT''  Displays Port of Server
*''SERVER_PROTOCOL''  Displays the protocol of the server.
*''SERVER_SOFTWARE''  shows the program of the server.
[[Example|php8015]]
!htmlspecialchars()
''What is the htmlspecialchars() function?''

The htmlspecialchars() function converts special characters to HTML entities. This means that it will replace HTML characters like < and > with &lt; and &gt;. This prevents attackers from exploiting the code by injecting HTML or Javascript code (Cross-site Scripting attacks) in forms.

$data = htmlspecialchars($data);
[[example|php8008]]

!preg_match
''preg_match ''- Perform a regular expression match
''Description''
{{{
int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] )
}}}
Searches subject for a match to the regular expression given in pattern.
[[examples|php8014]]
!$_SERVER['HTTP_USER_AGENT']

http://www.useragentstring.com/index.php

!round ()
PHP round () function is used for Syntax rounding.

Syntax

{{{
<?php
round(Numeric data, decimal number)
?>
}}}
[[Example|php8016]]

!number_format()
PHP number_format () converts text into type, decimal number format, or decimal

Syntax
{{{
<?php
number_format($value)
?>
}}}

[[Example|php8017]]
!md5  string
md5 — Calculate the md5 hash of a string
             Returns the hash as a 32-character hexadecimal number.
{{{
<?php
$str = 'apple';

if (md5($str) === '1f3870be274f6c49b3e31a0c6728957f') {
    echo "Would you like a green or red apple?";
}
?>
}}}

!md5_file
md5_file — Calculates the md5 hash of a given file
{{{
<?php
$file = 'php-5.3.0alpha2-Win32-VC9-x64.zip';

echo 'MD5 file hash of ' . $file . ': ' . md5_file($file);
?>
}}}
!sha1_file
{{{
<?php
foreach(glob('C:\xampp\htdocs\l\*.php') as $ent)
{
    if(is_dir($ent))
    {
        continue;
    }

    echo $ent . " - " .' (SHA1: ' . sha1_file($ent) .')' ."<br>", PHP_EOL;
}
?>
}}}
!crc32
crc32 — Calculates the crc32 polynomial of a string
{{{
<?php
$checksum = crc32("The quick brown fox jumped over the lazy dog.");
printf("%u\n", $checksum);
?>
}}}
{{{
<?php
$dir    = 'C:\xampp\htdocs\cw';
$files1 = scandir($dir);

foreach($files1 as $file)
{
    if (!is_dir("$dir/$file"))
    {
        echo $file. "<br>";
    }
}
?>
}}}
[[leapyear|php8300a]]  Note: form having an issue
[[Convert Decimal to Binary |php8300b]]
[[Convert Fahrenheit to Celcius|php8300c]]
!leapyear
{{{
<?php
$value;
$value = 2012;
echo "Enter a year <br>";
echo "Value <br>";
if($value %4 ==0)
{
	echo "$value is a leap year";
}
else
{
		echo "$value is Not a leap year";
}
}}}
!leapyear form input 
{{{
<html>
<head></head>
<body>
<form method="post">
Enter a year: <input type = "text" name = "year" /><br>
//<label>UserName :</label><input type = "text" name="username" class="a"/><br /><br />
<input type="submit" id="btnsubmitt" value="submit" style="align:center:margin-left: 135px;margin-top: 5px;:/>

</body>

</html>
<?php
if(isset($_POST[btnsubmit']))
{
   $value = 0;
   $value=$_POST[year];
//   	$name=$_POST['username'];
   if($value %4 ==0)
      {
	       echo "$value is a leap year";
      }
       else
      {
		echo "$value is Not a leap year";
      }	
}

}}}

### error message
Parse error: syntax error, unexpected ''])) ' (T_ENCAPSED_AND_WHITESPACE), expecting ']' in C:\xampp\htdocs\mw\leapyearF.php on line 12
!Convert Decimal to Binary
{{{
<?php
 $number=10; $mor=0;
 echo "Decimal Number is = $number<br>";
 $mor = decbin($number);
 echo "Binary Number is = $mor";
?>
}}}
!Convert Decimal to Binary with Forms
{{{
<html>
<head>
<title></title>

</head>

<body>
<!-- <div class="nukr"><h2 class="col_insert" >Reverse Number</h2></div> -->
<div class=""><h2 class="" >Reverse Number</h2></div>
<!-- <form action="" method="post" name="insert_form" id="insert_form" class="comment-form"> -->
<form action="" method="post" name="insert_form" id="insert_form" class="">
<!-- <table class="tableT1 align="left" border="0" bordercolor="#FFFFFF"> -->
<table class=" align="left" border="0" bordercolor="#FFFFFF">
<tr><td><b><i>Enter Number</b></i></td>
<td><input id="number" name="number" type="text" size="30" />
<tr><td></td><td><input type="submit" id="btnsubmit" name="btnsubmit" value="Caculate" size="30" /></td></tr>
<tr><td></td><td>       </td></tr>
</table>
</form>


</html>
<?php
if(isset($_POST['btnsubmit']))
{
 $number; $mor=0;
 $number=$_POST['number'];
 echo "Decimal Number is = $number<br>";
 $mor = decbin($number);
 echo "Binary Number is = $mor";
}
?>
}}}
! Covert nuber to binay and insert into table
{{{
<html>
<head>
<title></title>

</head>

<body>
<div class=""><h2 class="" >Convert a Number from decimal to Binary</h2></div>
<form method="post" >
<table class=" align="left" border="1" bordercolor="#FFFFFF">
<tr><td><b><i>Enter Number</b></i></td>
<td><input id="number" name="number" type="text" size="30" />
<tr><td></td><td><input type="submit" id="btnsubmit" name="btnsubmit" value="Caculate" size="30" /></td></tr>
<tr><td></td><td>       </td></tr>
</table>
</form>


</html>
<?php
$conn=mysqli_connect('localhost','root','','winsysdata');
if(isset($_POST['btnsubmit']))
{
 $number=$_POST['number'];
 $rs=$number;
 $mor=0;
 echo "Decimal Number is = $rs<br>";
 $mor = decbin($number);
 echo "Binary Number is = $mor";
$sql= "insert into reves(Numbe, Revers) Value('$rs', '$mor')";
if($conn->query($sql)==TRUE)
{
	echo"<font color=#FF00FF> New Record Inserted<br></font>";
}
else
{
	echo"Error: ".$sql."<br>".$conn->error;
}
 }
?>

}}}
Ref: https://t4tutorials.com/php-program-to-convert-decimal-number-into-binary-with-form-and-database/
!Convert Fahrenheit to Celsius
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>Convert Fahrenheit to Celcius</title>
  </head>
  <body>
	<?php
  $far = 89;
  $cel=($far -32) * (5/9);
  echo "Temperature in Fahrenheit is : $far". "<br />";
  echo "Temperature in Celcius is : $cel". "<br />";
  ?>
  </body>
</html>
}}}
!Convert Fahrenheit to Celsius Form
{{{

}}}
[[Create Database|php8026]]
[[create table|php8022]]
[[insert data|php8023]]
[[Prepared|php8024]]
[[Last Inserted ID|php8025]]|
[[SELECT Query|php8027]]
[[WHERE Clause|php8028]]
[[LIMIT Clause|php8029]]
[[ORDER BY Clause|php8030]]
[[UPDATE Query|php8031]]
[[DELETE Query|php8032]]
[[CRUD Application|php8033]]


[[another example create Table & insert data|php8035]]
https://www.tutorialrepublic.com/twitter-bootstrap-examples.php
http://php.net/manual/en/timezones.php
https://www.iana.org/time-zones
http://php.net/manual/en/function.date.php
date — Format a local time/date
string date ( string $format [, int $timestamp = time() ] )
[[date(DATE_COOKIE)|php8701a]]
[[date validate|php8701b]]
[[microtime|php8701c]]
[[login session time limit|php8701d]]
[[gmmktime|php8701e]]  or mktime
!date(DATE_COOKIE
{{{
<?php
//echo 'Today is ' . date('g:i:s a \o\n l, F j, Y');
//echo ' the time is ' . date('g:i:s a');
echo date(DATE_COOKIE);
}}}
!Check Date Validity
{{{
<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Check Date Validity</title>
</head>
<body>
<h1>Check Date</h1>
<form method="post">
    <p>
        <label for="month">Month: </label>
        <select name="month" id="month">
            <?php
            // Only the key for January is set explicitly.
            // The other months increment the key automatically.
            $months = [1 => 'January', 'February', 'March', 'April', 'May', 'June',
                'July', 'August', 'September', 'October', 'November', 'December'];
            foreach ($months as $key => $value) {
                echo "<option value='$key'>$value</option>";
            }
            ?>
        </select>
        <label for="day">Day: </label>
        <select name="day" id="day">
            <?php
            for ($i = 1; $i <= 31; $i++) {
                echo "<option>$i</option>";
            }
            ?>
        </select>
        <label for="year">Year: </label>
        <input type="text" name="year" id="year" list="year_list">
        <!-- A datalist creates an editable drop-down menu in HTML5 browsers. -->
        <datalist id="year_list">
            <?php
            $thisyear = date('Y');
            $limit = $thisyear + 5;
            while ($thisyear <= $limit) {
                echo "<option value='$thisyear'></option>";
                $thisyear++;
            }
            ?>
        </datalist>
    </p>
    <p>
        <input type="submit" name="check" value="Check Date">
    </p>
</form>
<?php
if (isset($_POST['check'])) {
    $month = $_POST['month'];
    $day = $_POST['day'];
    $year = $_POST['year'];
    echo "<p>Date submitted: $months[$month] $day, $year";
    if (checkdate($month, $day, $year)) {
        echo ' is valid.</p>';
    } else {
        echo ' is not valid.</p>';
    }
}
?>
</body>
</html>
}}}
!microtime
{{{
<?php
//echo microtime(true);

$val = 'bananas';
$array = array_fill(0, 1000000, $val);
$size = count($array);
for ($i = 0; $i < $size; $i++) {
    $val .= $i;
}

echo 'Time taken: ' . (microtime(true) - $_SERVER['REQUEST_TIME_FLOAT']) . ' seconds';
}}}
[[Login session| php8701da]]
[[Time Limit |php8701db]]
[[restricted1|php8701dc]]
[[restricted2|php8701dd]]
!Login session time limit
{{{
<?php
if (isset($_POST['login'])) {
    session_start();
    if ($_POST['username'] == 'datetime' && $_POST['password'] == 'lynda') {
        $_SESSION['authenticated'] = time();
        header('Location: restricted1.php');
        exit;
    }
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Limited Session</title>
</head>
<body>

</body>
<h1>Time Limit on Inactive Session</h1>
<?php
if (isset($_GET['expired'])) {
    echo '<p>Your session has expired. Please log in again.</p>';
}
?>
<form method="post">
    <p>
        <label for="username">Username: </label>
        <input type="text" name="username" id="username">
    </p>
    <p>
        <label for="password">Password: </label>
        <input type="password" name="password" id="password">
    </p>
    <p>
        <input type="submit" name="login" value="Log In">
    </p>
</form>
</html>
}}}
!Limit Session
{{{
<?php
$limit = 10 * 60;
session_start();
if (!isset($_SESSION['authenticated'])) {
    header('Location: login.php');
    exit;
} elseif ($_SESSION['authenticated'] + $limit < time()) {
    $_SESSION = [];
    if (isset($_COOKIE[session_name()])) {
        setcookie(session_name(), '', time() - 86400, '/');
    }
    session_destroy();
    header('Location: login.php?expired=true');
    exit;
} else {
    $_SESSION['authenticated'] = time();
}
}}}
!restricted 1
{{{
<?php require 'limit_session.php'; ?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Restricted Page</title>
</head>
<body>
<h1>Member's Area</h1>
<p><a href="restricted2.php">Really secret stuff</a></p>
</body>
</html>
}}}
restricted 2
{{{
<?php require 'limit_session.php'; ?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Restricted Page</title>
</head>
<body>
<h1>Really Secret Stuff</h1>
<p><a href="restricted1.php">Back to member's area</a></p>
</body>
</html>
}}}
!The gmmktime() function returns the Unix timestamp for a GMT date.
{{{
<?php
//$ts = mktime(16,38,0,6,21,2015);
$ts = gmmktime(16,38,0,6,21,2015);
echo date('g:i:s a, l, F j, Y', $ts);
}}}
!Connect via FTP and check if directory exists
{{{
<?php
// FTP login details
$ftp_server = 'yourserver.com';
$ftp_server_path = '/public_html/';
$ftp_user_name = 'username';
$ftp_user_pass = 'password';
// Connect to the FTP
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
//List the files in this folder (non recursively)
$list = ftp_nlist($conn_id, $ftp_server_path);
// Loop entries
foreach($list as $entry) {
    // Ignore '.' and '..', more complex versions could be in an 
    // array or even a text file ala .gitignore
  if($entry != '.' && $entry != '..') {
        // Use our test function
		$is_dir = ftp_isdir($conn_id, $ftp_server_path . $entry); 
        // Log results
		if($is_dir)
            echo "$entry is a directory n";
        else
            echo "$entry is a file n";
	}
}
// Close connection
ftp_close($conn_id);
// Our is_dir function, note the @ used to suppress useless warnings
function ftp_isdir($conn_id,$dir) 
{ 
    if(@ftp_chdir($conn_id,$dir)) { 
        ftp_cdup($conn_id); 
        return true; 
    } else { 
        return false; 
    } 
}
}}}
Ref: https://gist.github.com/Dare-NZ/5523650
* be care full when using ''$_SERVER["PHP_SELF"]''  see  https://www.w3schools.com/php/php_form_validation.asp
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
  <head>
    <title>For loop </title>
  </head>
  <body>
	<?php 
	print "<table border=\"1\" align=\"center\">"; 
	print "<tr><th>ACII value in Decimal</th>"; 
	print "<th>Character/th></tr>"; 
	for ( $i = 31; $i <= 255; $i ++) {
                print "<tr><td>"; 
                print $i; 
                print "</td><td>"; 
                print chr($i); 
                print "</td></tr>"; 
	}
	print "</table>";
	?>
  </body>
</html>
}}
Ref: http://lazybutexpert.com/how-to-create-chr-php/
{{{
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
	<title>Error Handling</title>
	</head>
    <body>
<?php
 
//Sample Database Connection Script 
 
//Setup connection variables, such as database username
//and password
$hostname="localhost";
$username="sara";
$password="Pa55word
$dbname="your_dbusername";
$usertable="your_tablename";
$yourfield = "your_field";
 
//Connect to the database
$connection = mysql_connect($hostname, $username, $password);
mysql_select_db($dbname, $connection);
 
//Setup our query
$query = "SELECT * FROM $usertable";
 
//Run the Query
$result = mysql_query($query);
 
//If the query returned results, loop through
// each result
if($result)
{
  while($row = mysql_fetch_array($result))
  {
    $name = $row["$yourfield"];
    echo "Name: " . $name; 

  }
}
 
?>
    </body>
</html>
}}}
''need to run again with db & tables
Ref: https://www.inmotionhosting.com/support/website/database-connections/connecting-to-a-database-using-phphttp://www.inmotionhosting.com/support/website/database-connections/connecting-to-a-database-using-php
{{{
<!--
krisnadev
http://lazybutexpert.com
-->
<!DOCTYPE HTML>
<html>
<head>
<title></title>
</head>
<body>
<?php
$strDate = date_parse("2006-12-12 10:50:45");
echo $strDate["year"]."<br>";
echo $strDate["month"]."<br>";
echo $strDate["day"]."<br>";
echo "<hr>";
foreach($strDate as $key => $value) {
    echo "Key: [$key] Value= $value<br>";
}
?>
</body>
</html>
}}}
[img[https://img2.files.wordpress.com/2018/05/screenhunter-1660.jpg]]
[[Laravel From Scratch Part 1|https://www.youtube.com/watch?v=EU7PRmCpx-0&list=PLillGF-RfqbYhQsN5WMXy6VsDMKGadrJ-&index=2&t=0s]]
[[Laravel From Scratch Part 2|https://www.youtube.com/watch?v=H3uRXvwXz1o&list=PLillGF-RfqbYhQsN5WMXy6VsDMKGadrJ-&index=2]]
[[Laravel From Scratch Part 3|https://www.youtube.com/watch?v=sLFNVXY0APk&index=3&list=PLillGF-RfqbYhQsN5WMXy6VsDMKGadrJ-]]
[[Laravel From Scratch Part 4|https://www.youtube.com/watch?v=bSG2YMqJJys&list=PLillGF-RfqbYhQsN5WMXy6VsDMKGadrJ-&index=4]]
!PHP Tutorials
https://www.jquery-az.com/php-foreach-loop-2-ways-to-use-it/




!forns
http://form.guide/php-form/php-form-post.html
https://wwwlyndacom.ezproxy.slq.qld.gov.au/Laravel-tutorials/Facades-utility/604257/648642-4.html?srchtrk=index%3a6%0alinktypeid%3a2%0aq%3aLaravel%0apage%3a1%0as%3arelevance%0asa%3atrue%0aproducttypeid%3a2
[[PHP5 PASSWORD HASH GENERATOR|http://www.passwordtool.hu/php5-password-hash-generator]]
https://www.gardeningknowhow.com/edible/fruits/avocado/avocado-tree-cuttings.htm
[[How to Make a Kokedama with Kathleen|https://www.youtube.com/watch?v=f_tQW30KoZU]]

https://www.australiantropicalfoods.com/



https://www.daf.qld.gov.au/business-priorities/agriculture/plants/fruit-vegetable/insect-pests/citrus-mealybug
https://www.rosehosting.com/blog/how-to-install-python-3-6-on-ubuntu-16-04/
[[Only A Mastermind Can Solve This|https://www.youtube.com/watch?v=PwiRVHoA8MA]]|
[[Fast Vedic Mental Math tricks - Multiplication 01|https://www.youtube.com/watch?v=lt1FY6jlgmY]]
[[Math Magic Number Secrets Of The Human Calculator By Scott Flansburg|https://www.youtube.com/watch?v=02xI2jyPpQ4]]
[[Magical Squaring|https://www.youtube.com/watch?v=_FoONg5Meyc]]
''5 open source network monitoring tools''
Keep a better eye on your network with this roundup of top tools
[[network monitoring tools|https://opensource.com/article/19/2/network-monitoring-tools]]
''Set up a basic live streaming server on a Linux or BSD operating system''
[[https://oCreate your own video streaming server with Linux|pensource.com/article/19/1/basic-live-video-streaming-server]]
[[REACT JS TUTORIAL #1 - Reactjs Javascript Introduction & Workspace Setup|https://www.youtube.com/watch?v=MhkGQAoc7bc&list=PLoYCgNOIyGABj2GQSlDRjgvXtqfDxKm5b]]
https://www.000webhost.com/blog/wordpress-loop <== must read
https://www.000webhost.com/blog/wordpress-fonts/
https://www.000webhost.com/blog/504-gateway-timeout
[[email validation|reg001]]
!email validation.
{{{
let EMAIL_REGEXP = 
new RegExp (['^(([^<>()[\\]\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\.,;:\\s@\"]+)*)',
                    '|(".+"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.',
                    '[0-9]{1,3}\])|(([a-zA-Z\\-0-9]+\\.)+',
                    '[a-zA-Z]{2,}))$'].join(''));
}}}
Ref: https://stackoverflow.com/questions/12317049/how-to-split-a-long-regular-expression-into-multiple-lines-in-javascript
[[Install KODI | rpi001]]
[[Links|rpi002]]


https://hackaday.io/project/162164/instructions
!Install KODI
''installation''
''Add apt source operation''
Add the file /etc/apt/sources.list.d/pipplware_jessie.list
{{{
  deb http://pipplware.pplware.pt/pipplware/dists/jessie/main/binary /
}}}

''Because it is a third-party source, add a key''

{{{
  wget -O - http://pipplware.pplware.pt/pipplware/key.asc | sudo apt-key add -
}}}

''Update''
{{{
  sudo apt-get update
}}}
''Perform installation''
''Install kodi''
{{{
  sudo apt-get install kodi
}}}
''Install PVRs''
{{{
  apt-cache search kodi-pvr
  sudo apt-get install kodi-pvr-iptvsimple
}}}
''Raspberry Links''
http://www.binaryhackers.net/2015/04/raspberry-pi-how-to-install-raspbian-os.html
http://www.binaryhackers.net/2015/04/raspberry-pi-kali-linux-installation-in.html
[[Making use of OLD ROUTER as Wifi REPEATER|https://www.youtube.com/watch?v=v_wz0zQngnA]]
[[How to Expand Your Wireless Range Using an Old Router|https://www.youtube.com/watch?v=n3plXzZ1Ckc]]
[[How To Extend Your Wi-Fi Network With An Old Router|https://www.lifehacker.com.au/2013/07/how-to-extend-your-wi-fi-network-with-an-old-router/]]
[[How to extend WipFi range with another router|[https://www.digitaltrends.com/computing/how-to-extend-wi-fi-range-with-another-router/]]]]
[[How to Turn an Old Router into a Wi-Fi Extender|https://www.tomsguide.com/us/how-to-turn-old-router-into-wifi-extender,review-5166.html]]
[[https://www.netgear.com/home/discover/wifi-range-extender/default.aspx]]
[[Boost Your WiFi Signal|WiFi Boosters, Repeaters and Extenders|https://www.repeaterstore.com/pages/wifi-booster-repeater-extender-differences]]
[[|How to extend Wi-Fi range: Increase your speed and fix slow internet problemshttps://www.expertreviews.co.uk/networks/1401371/how-to-extend-wi-fi-range-increase-speed-and-fix-problems/page/0/4]]


[[SADHGURU DESTROYS Zakir Naik's MEAT branding - Non-Veg|https://www.youtube.com/watch?v=1hhJA9jbR9U]]
[[Hydroponic Rail System Build - VLOG 1 by HPFirearms|https://www.youtube.com/watch?v=6BCHn-gKkio]]
[[Hydroponic Rail System Build - VLOG 2 by HPFirearms|https://www.youtube.com/watch?v=4WjO6BtJKEc]]
[[Soilless farming in India|- Hydroponic farm |https://www.youtube.com/watch?v=rrLZI8TgrQQ]]
[[Aquaponics System - $75 - How We Easily Build Aquaponics Garden|https://www.youtube.com/watch?v=dAeJ5RwqPFQ]]
[[Aquaponics - How to Build Your Own|https://www.youtube.com/watch?v=k-Lc6HefrkM]]  https://www.evergreen.ca/
[[Sadhguru at BHU, Varanasi – Youth and Truth [Full Talk]|https://www.youtube.com/watch?v=H3j4xjhE0Y8]]

[[Rare video of Sadhguru himself Performing and Teaching Yoga Asanas|https://www.youtube.com/watch?v=mzLEfYelMAc]]
[[Sadhguru at IIM Ahmedabad (Full Video)|https://www.youtube.com/watch?v=hdSB9hMAvkg]]
[[Javed Akhtar And Sadhguru's Knowledge Fight - Must Watch|https://www.youtube.com/watch?v=eoPtQNP5psU]]
[[Kangana Ranaut with Sadhguru - In Conversation with the Mystic 2018|https://www.youtube.com/watch?v=P7fO71hC1DU]]
!download-node-nightly.sh - simple script to fetch Node.js nightlies on OS X and Linux (x86, x64 & ARM)
https://gist.github.com/bencooling/ef15845e8b06cade75d9507a5f57cb32
[[Arrays 1|php8018]]
[[number_format()|php8017]]
[[Radio Button|php8019]]
https://github.com/PHPMailer/PHPMailer/blob/master/src/SMTP.php
https://stackoverflow.com/questions/28906487/fatal-error-class-phpmailer-not-found
https://github.com/PHPMailer/PHPMailer/tree/master/src/PHPMailer.php
https://myaccount.google.com/lesssecureapps


https://stackoverflow.com/questions/36538024/phpmailer-says-the-class-doesnt-exists-but-it-does  <=== works
https://ctrlq.org/code/19589-send-mail-php
https://stackoverflow.com/questions/36538024/phpmailer-says-the-class-doesnt-exists-but-it-does (partly working)
https://www.plus2net.com/php_tutorial/php_drop_down-download.php?download_style=4
''1045 - Access denied for user 'root'@'localhost' (using password: YES)''

* Go to file C:\xampp\phpMyAdmin\config.inc.php
* Find the line $cfg['Servers'][$i]['password']=

     change  to
{{{
$cfg['Servers'][$i]['password']=''
}}}
!coursera
https://www.coursera.org/specializations/full-stack-mobile-app-development
https://www.digikey.pl/product-detail/en/portescap/20M020D1B/403-1002-ND/417809
https://www.youtube.com/watch?v=hHe4Fc6uuBs
https://youtu.be/0qwrnUeSpYQ
https://youtu.be/wEbGhYjn4QI
[[ KLD-32EX520 System Software Update|https://www.sony.com.au/electronics/support/lcd-tvs-legacy-lcd-tv/kdl-32ex520/downloads/Y0015127]]
!Polygons and Polylines
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="800px" height="200px" viewBox="0 0 800 200">   

  <polygon points="10,10 190,190 190,10" fill="orange" stroke="blue" stroke-width="5px"/>
  <polygon points="210,10 390,10 390,190 210,190 300,50 300,150" fill="orange" stroke="blue" stroke-width="5px"/>
  <polygon points="410,10 590,10 590,190 410,190 500,50 500,150" fill="orange" fill-rule="evenodd" stroke="blue" stroke-width="5px"/>
  <polyline points="610,10 790,190 790,10" fill="none" stroke="blue" stroke-width="5px"/>
  
</svg>
<body>
  </body>
</html>
}}}
''The Noun Project is a particularly great source of such images''
https://thenounproject.com/term/dog/364/




https://inkscape.org/release/inkscape-0.92.3/windows/64-bit/exe/dl/
{{{
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
    <style type="text/css">
body {
  font: 300 13px "Helvetica Neue", Helvetica;
}
form {
  padding: 1em;
}
form, svg {
  position: absolute;
}
path {
  fill-rule: evenodd;
  stroke: #333;
  stroke-width: 2px;
}
.sun path {
  fill: #6baed6;
}
.planet path {
  fill: #9ecae1;
}
.ring path {
  fill: #c6dbef;
}
    </style>
  </head>
  <body>
    <form>
      Fingletooledrad:<br>
      <input type="radio" name="reference" id="ref-ring">
      <label for="ref-ring">Annulus</label><br>
      <input type="radio" name="reference" id="ref-planet" checked>
      <label for="ref-planet">Planets</label><br>
      <input type="radio" name="reference" id="ref-sun">
      <label for="ref-sun">Sun</label>
    </form>
    <script type="text/javascript" src="http://mbostock.github.com/d3/d3.js?2.5.0"></script>
    <script type="text/javascript">
var w = 960,
    h = 500,
    r = 80,
    x = Math.sin(2 * Math.PI / 3),
    y = Math.cos(2 * Math.PI / 3),
    speed = 4,
    start = Date.now();
var svg = d3.select("body").insert("svg:svg", "form")
    .attr("width", w)
    .attr("height", h)
  .append("svg:g")
    .attr("transform", "translate(" + w / 2 + "," + h / 2 + ")scale(.55)")
  .append("svg:g")
    .data([{radius: Infinity}]);
svg.append("svg:g")
    .attr("class", "ring")
    .data([{teeth: 80, radius: -r * 5, ring: true}])
  .append("svg:path")
    .attr("d", gear);
svg.append("svg:g")
    .attr("class", "sun")
    .data([{teeth: 16, radius: r}])
  .append("svg:path")
    .attr("d", gear);
svg.append("svg:g")
    .attr("class", "planet")
    .attr("transform", "translate(0,-" + r * 3 + ")")
    .data([{teeth: 32, radius: -r * 2}])
  .append("svg:path")
    .attr("d", gear);
svg.append("svg:g")
    .attr("class", "planet")
    .attr("transform", "translate(" + -r * 3 * x + "," + -r * 3 * y + ")")
    .data([{teeth: 32, radius: -r * 2}])
  .append("svg:path")
    .attr("d", gear);
svg.append("svg:g")
    .attr("class", "planet")
    .attr("transform", "translate(" + r * 3 * x + "," + -r * 3 * y + ")")
    .data([{teeth: 32, radius: -r * 2}])
  .append("svg:path")
    .attr("d", gear);
d3.selectAll("input[name=reference]")
    .data([r * 5, Infinity, -r])
    .on("change", function(d) { svg.data([{radius: d}]); });
d3.selectAll("input[name=speed]")
    .on("change", function() { speed = +this.value; });
function gear(d) {
  var n = d.teeth,
      r2 = Math.abs(d.radius),
      r0 = r2 - 8,
      r1 = r2 + 8,
      r3 = d.ring ? (r3 = r0, r0 = r1, r1 = r3, r2 + 20) : 20,
      da = Math.PI / n,
      a0 = -Math.PI / 2 + (d.ring ? Math.PI / n : 0),
      i = -1,
      path = ["M", r0 * Math.cos(a0), ",", r0 * Math.sin(a0)];
  while (++i < n) path.push(
      "A", r0, ",", r0, " 0 0,1 ", r0 * Math.cos(a0 += da), ",", r0 * Math.sin(a0),
      "L", r2 * Math.cos(a0), ",", r2 * Math.sin(a0),
      "L", r1 * Math.cos(a0 += da / 3), ",", r1 * Math.sin(a0),
      "A", r1, ",", r1, " 0 0,1 ", r1 * Math.cos(a0 += da / 3), ",", r1 * Math.sin(a0),
      "L", r2 * Math.cos(a0 += da / 3), ",", r2 * Math.sin(a0),
      "L", r0 * Math.cos(a0), ",", r0 * Math.sin(a0));
  path.push("M0,", -r3, "A", r3, ",", r3, " 0 0,0 0,", r3, "A", r3, ",", r3, " 0 0,0 0,", -r3, "Z");
  return path.join("");
}
d3.timer(function() {
  var angle = (Date.now() - start) * speed,
      transform = function(d) { return "rotate(" + angle / d.radius + ")"; };
  svg.selectAll("path").attr("transform", transform);
  svg.attr("transform", transform); // frame of reference
});
    </script>
  </body>
</html>
}}}
Ref:https://gist.github.com/cbrew/3498620
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg"       
     width="500px" height="150px" viewBox="0 0 500 150"
     font-family="Times, serif" font-size="100px">

<script type="text/ecmascript">
<![CDATA[

function changeColor(evt){
   var myrectangle = document.getElementById("MyRectangle");
   myrectangle.setAttributeNS(null, "fill", "green");
}

]]>
</script>

<g id="Button" onclick="changeColor(evt)">
   <rect id="MyRectangle" x="10" y="10" width="480" height="130" stroke="blue" stroke-width="5px" fill="purple"/>
   <text x="250" y="115" text-anchor="middle" pointer-events="none">Click me.</text>
</g>

</svg>
<body>
  </body>
</html>
}}}
Ref: http://wphooper.com/svg/examples/attributes.php
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="300px" height="200px" viewBox="0 0 300 200">
     
<line x1="10" y1="10" x2="290" y2="190" stroke="purple" stroke-width="20px"/>
<line x1="10" y1="50" x2="230" y2="190" stroke="green" stroke-width="10px"/>

</svg>
<body>
  </body>
</html>
}}}
Ref:http://wphooper.com/svg/examples/line.php
!SVG rectangle
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="300px" height="200px" viewBox="0 0 300 200">
     
<rect x="10" y="10" width="280" height="100" fill="green" stroke="black" stroke-width="5px"/>

</svg>
<body>
  </body>
</html>
}}}
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg"       
     width="300px" height="30px" viewBox="0 0 300 30"
     font-family="Times, serif" font-size="14px">
   
   <text x="5" y="14">This is some text.</text>
   <text x="5" y="28">This is some more text.</text>

</svg>
<body>
  </body>
</html>
}}}
{{{
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
     width="300px" height="300px" viewBox="-150 -150 300 300">

   <circle cx="0" cy="0" r="150" fill="yellow" stroke-width="0px"/>
   <path d="M 150,0 Q 150,150 0,150 Q -150,150 -150,0 Q -150,-150 0,-150 Q 150,-150 150,0" 
      stroke="black" stroke-width="1px" fill="none"/>

</svg>
}}}
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="300px" height="200px" viewBox="0 0 300 200">
     
   <rect x="0" y="0" width="300" height="200" fill="rgb(100%,100%,0%)"/>
   <circle cx="150" cy="100" r="80" fill="rgb(0,0,255)" stroke="rgb(75%,75%,100%)" stroke-width="10px"/>
   
</svg>
<body>
  </body>
</html>
}}}
Ref:http://wphooper.com/svg/examples/color.php
!Dashed Lines
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="600px" height="170px" viewBox="0 0 600 170">   

   <line x1="10" y1="10" x2="590" y2="10" stroke-width="10px" stroke-dasharray="10,10" stroke="darkblue" fill="none" />
   <line x1="10" y1="60" x2="590" y2="60" stroke-width="10px" stroke-dasharray="30,10" stroke="darkblue" fill="none"  />
   <line x1="10" y1="110" x2="590" y2="110" stroke-width="10px" stroke-dasharray="10,30" stroke="darkblue" fill="none"  />
   <line x1="10" y1="160" x2="590" y2="160" stroke-width="10px" stroke-dasharray="10,10,10,10,10,30,30,30" stroke="darkblue" fill="none" />
   
</svg>
<body>
  </body>
</html>
}}}
REf:http://wphooper.com/svg/examples/dash.php
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
     width="679px" height="214px" viewBox="-102 -112 679 214">

<defs>
   <g id="Pumpkin">
      <circle cx="0" cy="0" r="100" fill="orange" stroke="black" stroke-width="1px"/>
      <rect x="-10" y="-110" width="20" height="20" fill="darkgreen" stroke="black" stroke-width="1px"/>
      <circle cx="-30" cy="-30" r="20" fill="black"/>
      <circle cx="30" cy="-30" r="20" fill="black"/>
      <polygon points="0,0 20,25 -20,25" fill="black"/>
      <line x1="-60" y1="60" x2="60" y2="60" stroke-width="10px" stroke="black"/>
   </g>
</defs>

<use xlink:href="#Pumpkin"/>
<use xlink:href="#Pumpkin" x="250" y="0"/>
<use xlink:href="#Pumpkin" x="475" y="0"/>

</svg>
<body>
  </body>
</html>
}}}
Ref:http://wphooper.com/svg/examples/pumpkin-copies.php
!example01
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="800px" height="200px" viewBox="0 0 800 200">   

   <defs>
      <pattern id="GridPattern" x="0" y="0" width="10" height="10" patternUnits="userSpaceOnUse">
         <line x1="0" y1="0" x2="10" y2="0" stroke="lightblue" stroke-width="1px" />
         <line x1="0" y1="0" x2="0" y2="10" stroke="lightblue" stroke-width="1px" />
      </pattern> 
   </defs>

   <rect fill="url(#GridPattern)" x="0" y="0" width="800" height="200"/>

</svg>
<body>
  </body>
</html>
}}}
!example02 (filled in any shape)
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="300px" height="300px" viewBox="0 0 300 300">   

   <defs>
      <pattern id="PinkPattern" x="0" y="0" width="25" height="25" patternUnits="userSpaceOnUse">
         <rect x="0" y="0" width="25" height="25" fill="pink"/>
         <circle cx="0" cy="0" r="20" fill="white"/>
      </pattern> 
   </defs>
  
   <circle cx="150" cy="150" r="145" stroke="purple" stroke-width="5px" fill="url(#PinkPattern)"/>
  
</svg>
<body>
  </body>
</html>
}}}
!From my point of view, the main point of markers in SVG is to draw arrowheads
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="200px" height="200px" viewBox="0 0 200 200">   

   <defs>
      <marker id="Arrow" 
              markerWidth="5" markerHeight="5" viewBox="-6 -6 12 12" 
              refX="-2" refY="0" 
              markerUnits="strokeWidth" 
              orient="auto">
         <polygon points="-2,0 -5,5 5,0 -5,-5" fill="red" stroke="black" stroke-width="1px"/>
      </marker>
   </defs>

   <path d="M 10,10 Q 100,250 180,100" stroke="blue" fill="none" stroke-width="5px" marker-end="url(#Arrow)"/>
   
</svg>
<body>
  </body>
</html>
}}}
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg"       
     width="300px" height="110px" viewBox="0 -55 300 110"
     font-family="Times, serif" font-size="50px">
   
   <text x="5" y="-5">Hello!</text>
   <line x1="0" y1="0" x2="300" y2="0" stroke="red" stroke-width="1px"/>
   <text x="5" y="-5" transform="matrix(1,0,0,-1,0,0)" fill="blue">Hello!</text>

</svg>
<body>
  </body>
</html>
}}}
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     width="654px" height="480px" viewBox="-102 -112 654 480"
     xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">

<defs>
   <g id="Pumpkin">
      <circle cx="0" cy="0" r="100" fill="orange" stroke="black" stroke-width="1px"/>
      <rect x="-10" y="-110" width="20" height="20" fill="darkgreen" stroke="black" stroke-width="1px"/>
      <circle cx="-30" cy="-30" r="20" fill="black"/>
      <circle cx="30" cy="-30" r="20" fill="black"/>
      <polygon points="0,0 20,25 -20,25" fill="black"/>
      <line x1="-60" y1="60" x2="60" y2="60" stroke-width="10px" stroke="black"/>
   </g>
</defs>

<use xlink:href="#Pumpkin"/>
<use xlink:href="#Pumpkin" transform="translate(225,0) rotate(60)" />
<use xlink:href="#Pumpkin" transform="translate(450,0) scale(0.75)" />
<use xlink:href="#Pumpkin" transform="translate(0,225) scale(0.25,0.75)" />
<use xlink:href="#Pumpkin" transform="translate(225,225) skewX(45)" />
<use xlink:href="#Pumpkin" transform="translate(450,225) skewY(45)" />

</svg>
<body>
  </body>
</html>
}}}
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     width="600px" height="600px" viewBox="0 0 600 600"
     xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">

<defs>
   <polygon id="Triangle" points="0,0 600,0 0,600" fill="blue"/>   
   <g id="Image1">
      <use xlink:href="#Triangle" transform="scale(0.5)"/>
      <use xlink:href="#Triangle" transform="translate(300,0) scale(0.5)"/>
      <use xlink:href="#Triangle" transform="translate(0,300) scale(0.5)"/>
   </g>
   <g id="Image2">
      <use xlink:href="#Image1" transform="scale(0.5)"/>
      <use xlink:href="#Image1" transform="translate(300,0) scale(0.5)"/>
      <use xlink:href="#Image1" transform="translate(0,300) scale(0.5)"/>
   </g>
   <g id="Image3">
      <use xlink:href="#Image2" transform="scale(0.5)"/>
      <use xlink:href="#Image2" transform="translate(300,0) scale(0.5)"/>
      <use xlink:href="#Image2" transform="translate(0,300) scale(0.5)"/>
   </g>
   <g id="Image4">
      <use xlink:href="#Image3" transform="scale(0.5)"/>
      <use xlink:href="#Image3" transform="translate(300,0) scale(0.5)"/>
      <use xlink:href="#Image3" transform="translate(0,300) scale(0.5)"/>
   </g>
   <g id="Image5">
      <use xlink:href="#Image4" transform="scale(0.5)"/>
      <use xlink:href="#Image4" transform="translate(300,0) scale(0.5)"/>
      <use xlink:href="#Image4" transform="translate(0,300) scale(0.5)"/>
   </g>
</defs>

<use xlink:href="#Image5"/>

</svg>
<body>
  </body>
</html>
}}}
* print character ascii value between 32 and255 [[php9003]]
* print unicode character

lastone: http://lazybutexpert.com/how-to-create-date_parse-php/  [[testb]]
[[php9004]]
[[DNS record for mail|ht001]]
''Sending email need external server. try to do with some other method''
Youtube:
1.[[PHP Email Verification And Validation Tutorial - Registration & Login Form||https://www.youtube.com/watch?v=u2O_QyPfdpE]]
2. [[Email Address Verification Script using PHP|https://www.youtube.com/watch?v=XGL4giQ7Sn8&t=204s]]
https://www.youtube.com/watch?v=zOsIJ3Jatic
https://www.youtube.com/watch?v=k02_BevpFD4 <--using gmail

[[More coil whine, APC UPS power rail hum & fizz !!!|https://www.youtube.com/watch?v=uOJv47pD6N4]]
[[Easy UPS fix|https://www.youtube.com/watch?v=mJrqwerbxhw]]
[[apc ups no power on|https://www.youtube.com/watch?v=sCu6beQwWwU]]
[[repair dead ups|https://www.youtube.com/watch?v=BL_hbSzwS50]]
[[how to repair no output voltage in ups|https://www.youtube.com/watch?v=qvsR_B0JPMc]]
https://linuxpropaganda.wordpress.com/2016/07/07/install-virtualbox-from-ppa-in-xubuntu-16-04/ <=== following this link
https://linuxpropaganda.wordpress.com/2018/07/05/install-virtualbox-from-ppa-in-xubuntu-18-04/2/


https://www.tecmint.com/install-virtualbox-guest-additions-in-ubuntu/

https://www.youtube.com/watch?v=IeWfxUPPugE
[[Vertual Box and Kali Installation|https://learn.itmasters.edu.au/mod/forum/discuss.php?d=23461]]


[[ession 3 : VirtualBox Networking (NAT & Port Forwarding, Bridged, Internal, Host-Only)|https://www.youtube.com/watch?v=cDF4X7RmV4Q]]
[[Building a Virtual Lab with VirtualBox for Penetration Testing|https://www.youtube.com/watch?v=AiWRmMzwwJM]]

[[Network Security 101: Full Workshop|https://www.youtube.com/watch?v=E03gh1huvW4]]
https://www.youtube.com/watch?v=5wZVh7KQjzo&index=2&list=PLLnpHn493BHHkdpK8E37x_d5cOZBr4GlL
!Circle & Ellipse
{{{
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.1" baseProfile="full"
     xmlns="http://www.w3.org/2000/svg" 
     width="300px" height="200px" viewBox="0 0 300 200">
     
<circle cx="100" cy="100" r="95" fill="orange" stroke="blue" stroke-width="5px"/>
<ellipse cx="200" cy="50" rx="95" ry="45" fill="green" stroke="black" stroke-width="3px"/>

</svg>
<body>
  </body>
</html>
}}}
''Whatsapp''
[[Whatsapp TIPS, TRICKS & HACKS - you should try!!!|https://www.youtube.com/watch?v=sRGxHiHWL7Y]]
[[ClassWork|cw]]
https://www.transip.nl/cp/
https://www.transip.nl/cp/domein-hosting/hosting/database/prm/200093606/hindutemple.nl/

http://control.mijnhostingpartner.nl/

https://my.fastcomet.com
Email: friendsara04@gmail.com
Password: AiZyZrXESv
https://pacificu.libguides.com/c.php?g=495911&p=3395956
https://chrome.google.com/webstore/detail/video-player/gdebnehfojpoccpaocfbelbclfnpbmij?hl=en
https://support.google.com/drive/answer/2423694?co=GENIE.Platform%3DDesktop&hl=en
https://developers.google.com/web/fundamentals/media/video
https://kmwebsolutions.co.uk/how-to-embed-videos-on-your-blog-from-google-drive/
https://www.theverge.com/2018/5/3/17251104/google-chrome-66-autoplay-sound-videos-mute
https://www.wonderplugin.com/wordpress-video-gallery/how-to-play-videos-hosted-on-google-drive-in-wordpress/
https://www.apptamin.com/blog/optimize-play-store-app/
https://www.inmotionhosting.com/support/edu/website-design/adding-videos-website/embedding-video-directly-into-webpage
https://wordpress.org/plugins/google-drive-embedder/
https://www.charlesfarina.com/video-tracking-google-analytics/
yum install webmin

https://www.webmin.com/download/rpm/webmin-current.rpm
http://webmin.com/rpm.html

/etc/yum.repos.d/webmin.repo
[Webmin]
name=Webmin Distribution Neutral
#baseurl=https://download.webmin.com/download/yum
mirrorlist=https://download.webmin.com/download/yum/mirrorlist
enabled=1

{{{
wget http://www.webmin.com/jcameron-key.asc 
rpm --import jcameron-key.asc
yum install webmin
}}}
Got error while accessing http://172.16.15.9:10000/
resolved by: http://eitwebguru.com/webmin-error-the-web-server-is-running-in-ssl-mode/

login as root


https://github.com/webmin/webmin


https://ebookcentral.proquest.com/lib/slq/detail.action?docID=1659859
https://ebookcentral.proquest.com/lib/slq/reader.action?docID=1659859&ppg=20


[[How to recover your Wordpress password|https://www.name.com/support/articles/115012304587-Re|covering-a-lost-Wordpress-password]]
[[How to Fix WordPress Not Sending Email Issue|https://www.youtube.com/watch?v=GhKSg5-FskM]]
[[REST PASSWORD BY SCRIPT |https://kuttler.eu/en/code/wordpress-emergency-admin/]][[SCRIPT|WP003]]
[[HOW TO INSTALL AND SET UP A WORDPRESS MULTISITE|https://multilingualpress.org/docs/how-to-install-wordpress-multisite/]]
[[How to Create WordPress Multisite|https://websitesetup.org/wordpress-multisite/]]
[[Beginner’s Guide: How to Set Up WordPress Multisite|https://themeisle.com/blog/set-up-wordpress-multisite/]]
[[Everything You Need to Know to Activate and Use WordPress Multisite|https://www.hostinger.com/tutorials/activate-wordpress-multisite#gref]]
[[WordPress Multisite: How to Make a Multilingual Website|https://wplang.org/wordpress-multisite-multilingual/]]
[[Create A Network|https://codex.wordpress.org/Create_A_Network]]
[[the Wordpress password hasher|http://scriptserver.mainframe8.com/wordpress_password_hasher.php]]
[[How to Install and Setup WordPress Multisite Network|https://www.wpbeginner.com/wp-tutorials/how-to-install-and-setup-wordpress-multisite-network/]]
[[The Ultimate Guide to WordPress Multisite|https://premium.wpmudev.org/blog/ultimate-guide-multisite/]]
[[Want Edublogs for everyone?https://edublogs.org/]]
[[How to Install WordPress Multisite on a Local Host?|https://themeisle.com/blog/install-wordpress-multisite-on-local-host/]]

[[MULTI SITE--CAN'T ACCESS DASHBOARDS OR NEW SITES|https://premium.wpmudev.org/forums/topic/multi-site-cant-access-dashboards-or-new-sites]]


[[Wordpress site Backup|wp010]]
[[Wordpress more edit |Wpx01]]
https://code.tutsplus.com/courses/create-content-with-wordpress-gutenberg

https://www.flashuser.net/45-free-wordpress-themes-for-2012
https://2017.brisbane.wordcamp.org/sessions/
[[phpmyadmin Users and Privileges|https://www.youtube.com/watch?v=MBF02LurEHg]]

[[Install WordPress on CentOS 7|wp001]]
[[l172.16.15.9 local wp|localwp]]
[[friendni.com wp|frwp]]
[[Add photo Gallery|wp002]]
[[nymce advanced Editor|https://wpsites.net/wordpress-tips/tinymce-plugin-the-best-advanced-editor-for-wordpress/]]
[[1. Add Icons to Custom WordPress Menus Without Plugins|https://premium.wpmudev.org/blog/add-icons-wordpress-menus/]]
[[2. Add Icons to Custom WordPress Menus Without Plugins|https://www.sktthemes.net/wordpress/add-icons-wordpress-custom-menus/]]
https://wordpress.org/plugins/menu-icons-icomoon/
[[3. Add Image Icons With Navigation Menus in WordPress|https://www.wpbeginner.com/plugins/how-to-add-image-icons-with-navigation-menus-in-wordpress/]]
[[4.Tips, Tricks and Best Plugins for Customizing WordPress Menus|https://firstsiteguide.com/wordpress-menus-tips-and-tricks/]]
[[5. add menu icons to your theme|https://docs.themeisle.com/article/438-add-social-icons-to-theme-menu]]


https://www.inmotionhosting.com/support/
https://www.inmotionhosting.com/support/edu/wordpress/329-move-folders

http://blog.teamtreehouse.com/responsive-wordpress-bootstrap-theme-tutorial  <===
https://www.lyrathemes.com/bootstrap-wordpress-theme-tutorial-1/
https://blog.templatetoaster.com/wordpress-bootstrap-theme-development/
https://youtu.be/GWnDBUQwgv8
https://www.youtube.com/watch?v=7bHMh2e2qZM <== 55min
[[examples Blogs |blog00]]
[[Animation|http://www.justinaguilar.com/animations/index.html#how]]
https://webkit.org/blog/324/css-animation-2/
[[Reset Password|https://kinsta.com/knowledgebase/reset-wordpress-admin-password/]]
!contact Form 7
https://wordpress.org/plugins/contact-form-7-style/



https://premium.wpmudev.org/blog/making-wordpress-accessible/
https://stackoverflow.com/questions/45571546/place-text-before-and-inside-fields-in-contact-form-7-for-wordpress

[[Wordpress Pages|wpp000]]

https://mikado.ticksy.com/ticket/1328908/

[[remove header search|wphr]]

[[Tools |wpTools]]
https://www.sitepoint.com/move-wordpress-new-server-without-losing-anything/
[[read wp]]
[[hack|wp_hack]]
[[wordpress loop|wp-loop]]
http://www.procars-clean.com/

[[vulnerable |wp vl]]

https://github.com/Keyamoon  <== icon

[[wpeg: Ramasamy Webpage|wpeg001]]

http://www.artisteer.com/?p=purchase
[[some tips|wp tip]]
!worpress video players
https://www.youtube.com/watch?v=wtUb-sVcIL4
https://www.youtube.com/watch?v=DIlfYnsa8XE
https://www.youtube.com/results?search_query=fv+flowplayer+wordpress
https://wpdean.com/wordpress-video-player-plugins/
https://wordpress.org/plugins/slider-video/
https://www.wpbeginner.com/plugins/how-to-create-a-video-slider-in-wordpress/


https://github.com/danielsmota/campsatelier
[[wp Theme|wp01]]


https://codex.wordpress.org/Function_Reference/wp_list_comments


http://mypro.tiddlyspot.com/backup/
https://wordpress.stackexchange.com/questions/227539/color-picker-for-posts-and-pages
https://madebydenis.com/adding-metaboxes-to-your-posts-or-pages-color-picker-metabox/

''video''
https://wphowto.net/how-to-embed-video-in-wordpress-861
https://www.wonderplugin.com/wordpress-video-player/
https://www.wpbeginner.com/beginners-guide/why-you-should-never-upload-a-video-to-wordpress/
! to avoid wordpress vulnerability
{{{
 robots.txt available under: 'http://www.annaviyar.com/robots.txt'

 The WordPress 'http://www.annaviyar.com/readme.html' file exists exposing a version number

 Interesting header: LINK: ; rel="https://api.w.org/"

 Interesting header: SERVER: Apache

 Interesting header: X-POWERED-BY: PHP/5.6.22

 XML-RPC Interface available under: http://www.annaviyar.com/xmlrpc.php

 Upload directory has directory listing enabled: http://www.annaviyar.com/wp-content/uploads/
}}}

https://www.youtube.com/watch?v=1SxHV8B61JM <==How to Hack WordPress Website With In 2 Minutes(New Method-2017)Made for opisrael
https://www.youtube.com/watch?v=7Vd3Ei4ysUw <== hack Wordpress Websites with kali lunix 2017✔
https://www.smashingmagazine.com/2009/06/10-useful-wordpress-loop-hacks/
https://wordpress.stackexchange.com/questions/113185/how-to-get-a-different-html-for-odd-even-posts
https://jasonyingling.me/loop-there-it-is/
https://www.advancedcustomfields.com/resources/querying-relationship-fields/
!Install WordPress on CentOS 7
Ref: https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-on-centos-7

MariaDB [(none)]> DROP DATABASE wpdb;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
{{{
MariaDB [(none)]> commeit;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that                                   corresponds to your MariaDB server version for the right syntax to use near 'com                                  meit' at line 1
MariaDB [(none)]> commit;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> CREATE DATABASE wpdb;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> CREATE USER sara@localhost IDENTIFIED BY 'M0yd0y12';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON wpdb.* TO sara@localhost IDENTIFIED BY 'M0yd0y12';
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit
Bye
[root@dhcppc2 html]#

!How To Add and Delete Users on a CentOS 7 Server
https://www.digitalocean.com/community/tutorials/how-to-add-and-delete-users-on-a-centos-7-server

}}}
''Delete a Database in MySQL''
DROP DATABASE <database name>;
https://www.youtube.com/watch?v=VjGnEHyqVqQ
https://www.youtube.com/watch?v=euQtwJjZTDw
https://www.youtube.com/watch?v=L2gXPrPYHFE
https://www.youtube.com/watch?v=YdtbB9bhnMU
https://www.youtube.com/user/enviragallery
https://www.youtube.com/watch?v=npaI348chE0 <=== different language
!wordpress Theme
https://wbxpress.net/development-wordpress-theme-start-from-scratch/
http://hookr.io/
[[How to Make a Manual WordPress Database Backup|https://alienwp.com/manual-wordpress-database-backup/]]
[[How to Manually Backup Your WordPress Website (A Step-by-Step Guide)|https://aspengrovestudios.com/how-to-manually-backup-your-wordpress-website/]]
[[How To Make a WordPress Database Backup Manually|https://www.wpbeginner.com/beginners-guide/how-to-make-a-wordpress-database-backup-manually/]]
[[How to Backup MySQL Database Using phpMyAdmin|https://kinsta.com/knowledgebase/how-to-backup-mysql-database-using-phpmyadmin/]]
[[Using phpMyAdmin for WordPress Database Backup|https://wpsites.net/wordpress-hosting/using-phpmyadmin-for-wordpress-database-backup/]]
[[EXPORTING YOUR DATABASE FROM YOUR PREVIOUS HOST|https://wpengine.com.au/support/exporting-database/]]
[[
https://daneden.github.io/animate.css/
https://github.com/daneden/animate.css
---------------------------------------------------------
https://htmlchecker.website/
https://www.wpwhitesecurity.com/wordpress-security/hacking-wordpress-login-capturing-usernames-passwords/
!Ramasamy Webpage
http://ramasamyezhuthukal.in/index.php
https://wordpress.stackexchange.com/questions/2682/how-to-remove-search-bar-from-a-wordpress-theme
https://themepalace.com/topic/header-search-form/
https://stackoverflow.com/questions/48038479/how-to-add-icon-in-search-box
https://www.wpbeginner.com/wp-themes/how-to-add-a-search-toggle-effect-in-wordpress/
http://www.kbgressitt.com/
!configuration
https://www.guru99.com/xampp-netbeans.html

!Send mail using mercury module

https://newcoderslife.wordpress.com/2012/06/27/how-to-use-xampps-mail-server-mercury-mail/
https://www.c-sharpcorner.com/UploadFile/c8aa13/send-mail-on-local-host-via-mercury-with-xampp/


https://www.thunderbird.net/en-US/thunderbird/60.3.2/system-requirements/

[[How to install XAMPP on Ubuntu 16.04|http://www.codebind.com/linux-tutorials/install-xampp-ubuntu-16-04/]]

''Xampp: Access MySQL from terminal?''
{{{
cd /opt/lampp/bin/
./mysql -u root -p
}}}
''The $cfg['TempDir'] (./tmp/) is not accessible''. phpMyAdmin is not able to cache templates and will be slow because of this
* First, stop the xampp service; /opt/lampp/lampp stop

* Then go to the phymyadmin installation director, then find its config.inc.php file, then add $cfg['TempDir'] = '/tmp'; like this

* At the end, start the xampp service /opt/lampp/lampp start

https://www.apachefriends.org/download.html

!wordpress
https://www.tecmint.com/install-wordpress-on-ubuntu-16-04-with-lamp/

sudo chown -R www-data:www-data /opt/lampp/htdocs/wp
sudo chmod -R 755 /opt/lampp/htdocs/wp
https://stackoverflow.com/questions/5016505/grant-all-privileges-on-database

grant all privileges on wp.* to sara@localhost identified by 'MPa55word';

https://www.apachefriends.org/bitnami_for_xampp.html
!GettingStarted
To get started with this blank [[TiddlyWiki]], you'll need to modify the following tiddlers:
* [[SiteTitle]] & [[SiteSubtitle]]: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* [[MainMenu]]: The menu (usually on the left)
* [[DefaultTiddlers]]: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>


!WelcomeToTiddlyspot
This document is a ~TiddlyWiki from tiddlyspot.com.  A ~TiddlyWiki is an electronic notebook that is great for managing todo lists, personal information, and all sorts of things.

@@font-weight:bold;font-size:1.3em;color:#444; //What now?// &nbsp;&nbsp;@@ Before you can save any changes, you need to enter your password in the form below.  Then configure privacy and other site settings at your [[control panel|http://mypro.tiddlyspot.com/controlpanel]] (your control panel username is //mypro//).
<<tiddler TspotControls>>
See also GettingStarted.

@@font-weight:bold;font-size:1.3em;color:#444; //Working online// &nbsp;&nbsp;@@ You can edit this ~TiddlyWiki right now, and save your changes using the "save to web" button in the column on the right.

@@font-weight:bold;font-size:1.3em;color:#444; //Working offline// &nbsp;&nbsp;@@ A fully functioning copy of this ~TiddlyWiki can be saved onto your hard drive or USB stick.  You can make changes and save them locally without being connected to the Internet.  When you're ready to sync up again, just click "upload" and your ~TiddlyWiki will be saved back to tiddlyspot.com.

@@font-weight:bold;font-size:1.3em;color:#444; //Help!// &nbsp;&nbsp;@@ Find out more about ~TiddlyWiki at [[TiddlyWiki.com|http://tiddlywiki.com]].  Also visit [[TiddlyWiki.org|http://tiddlywiki.org]] for documentation on learning and using ~TiddlyWiki. New users are especially welcome on the [[TiddlyWiki mailing list|http://groups.google.com/group/TiddlyWiki]], which is an excellent place to ask questions and get help.  If you have a tiddlyspot related problem email [[tiddlyspot support|mailto:support@tiddlyspot.com]].

@@font-weight:bold;font-size:1.3em;color:#444; //Enjoy :)// &nbsp;&nbsp;@@ We hope you like using your tiddlyspot.com site.  Please email [[feedback@tiddlyspot.com|mailto:feedback@tiddlyspot.com]] with any comments or suggestions.


!MainMenu
[[WelcomeToTiddlyspot]] [[GettingStarted]]

!DefaultTiddlers
[[WelcomeToTiddlyspot]] [[GettingStarted]]
[[virtualbox |vb00]]
!Cude Blog: font-awesome.css (css/font-awesome.css|
{{{
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714286em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em;
}
.fa-pull-left {
  float: left;
}
.fa-pull-right {
  float: right;
}
.fa.fa-pull-left {
  margin-right: .3em;
}
.fa.fa-pull-right {
  margin-left: .3em;
}
/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-feed:before,
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before,
.fa-gratipay:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-slack:before {
  content: "\f198";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-pied-piper-pp:before {
  content: "\f1a7";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-spoon:before {
  content: "\f1b1";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-file-pdf-o:before {
  content: "\f1c1";
}
.fa-file-word-o:before {
  content: "\f1c2";
}
.fa-file-excel-o:before {
  content: "\f1c3";
}
.fa-file-powerpoint-o:before {
  content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}
.fa-file-code-o:before {
  content: "\f1c9";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}
.fa-history:before {
  content: "\f1da";
}
.fa-circle-thin:before {
  content: "\f1db";
}
.fa-header:before {
  content: "\f1dc";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-sliders:before {
  content: "\f1de";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-newspaper-o:before {
  content: "\f1ea";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bell-slash-o:before {
  content: "\f1f7";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-eyedropper:before {
  content: "\f1fb";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-area-chart:before {
  content: "\f1fe";
}
.fa-pie-chart:before {
  content: "\f200";
}
.fa-line-chart:before {
  content: "\f201";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-bus:before {
  content: "\f207";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-cc:before {
  content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}
.fa-meanpath:before {
  content: "\f20c";
}
.fa-buysellads:before {
  content: "\f20d";
}
.fa-connectdevelop:before {
  content: "\f20e";
}
.fa-dashcube:before {
  content: "\f210";
}
.fa-forumbee:before {
  content: "\f211";
}
.fa-leanpub:before {
  content: "\f212";
}
.fa-sellsy:before {
  content: "\f213";
}
.fa-shirtsinbulk:before {
  content: "\f214";
}
.fa-simplybuilt:before {
  content: "\f215";
}
.fa-skyatlas:before {
  content: "\f216";
}
.fa-cart-plus:before {
  content: "\f217";
}
.fa-cart-arrow-down:before {
  content: "\f218";
}
.fa-diamond:before {
  content: "\f219";
}
.fa-ship:before {
  content: "\f21a";
}
.fa-user-secret:before {
  content: "\f21b";
}
.fa-motorcycle:before {
  content: "\f21c";
}
.fa-street-view:before {
  content: "\f21d";
}
.fa-heartbeat:before {
  content: "\f21e";
}
.fa-venus:before {
  content: "\f221";
}
.fa-mars:before {
  content: "\f222";
}
.fa-mercury:before {
  content: "\f223";
}
.fa-intersex:before,
.fa-transgender:before {
  content: "\f224";
}
.fa-transgender-alt:before {
  content: "\f225";
}
.fa-venus-double:before {
  content: "\f226";
}
.fa-mars-double:before {
  content: "\f227";
}
.fa-venus-mars:before {
  content: "\f228";
}
.fa-mars-stroke:before {
  content: "\f229";
}
.fa-mars-stroke-v:before {
  content: "\f22a";
}
.fa-mars-stroke-h:before {
  content: "\f22b";
}
.fa-neuter:before {
  content: "\f22c";
}
.fa-genderless:before {
  content: "\f22d";
}
.fa-facebook-official:before {
  content: "\f230";
}
.fa-pinterest-p:before {
  content: "\f231";
}
.fa-whatsapp:before {
  content: "\f232";
}
.fa-server:before {
  content: "\f233";
}
.fa-user-plus:before {
  content: "\f234";
}
.fa-user-times:before {
  content: "\f235";
}
.fa-hotel:before,
.fa-bed:before {
  content: "\f236";
}
.fa-viacoin:before {
  content: "\f237";
}
.fa-train:before {
  content: "\f238";
}
.fa-subway:before {
  content: "\f239";
}
.fa-medium:before {
  content: "\f23a";
}
.fa-yc:before,
.fa-y-combinator:before {
  content: "\f23b";
}
.fa-optin-monster:before {
  content: "\f23c";
}
.fa-opencart:before {
  content: "\f23d";
}
.fa-expeditedssl:before {
  content: "\f23e";
}
.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: "\f240";
}
.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "\f241";
}
.fa-battery-2:before,
.fa-battery-half:before {
  content: "\f242";
}
.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "\f243";
}
.fa-battery-0:before,
.fa-battery-empty:before {
  content: "\f244";
}
.fa-mouse-pointer:before {
  content: "\f245";
}
.fa-i-cursor:before {
  content: "\f246";
}
.fa-object-group:before {
  content: "\f247";
}
.fa-object-ungroup:before {
  content: "\f248";
}
.fa-sticky-note:before {
  content: "\f249";
}
.fa-sticky-note-o:before {
  content: "\f24a";
}
.fa-cc-jcb:before {
  content: "\f24b";
}
.fa-cc-diners-club:before {
  content: "\f24c";
}
.fa-clone:before {
  content: "\f24d";
}
.fa-balance-scale:before {
  content: "\f24e";
}
.fa-hourglass-o:before {
  content: "\f250";
}
.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "\f251";
}
.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "\f252";
}
.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "\f253";
}
.fa-hourglass:before {
  content: "\f254";
}
.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "\f255";
}
.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "\f256";
}
.fa-hand-scissors-o:before {
  content: "\f257";
}
.fa-hand-lizard-o:before {
  content: "\f258";
}
.fa-hand-spock-o:before {
  content: "\f259";
}
.fa-hand-pointer-o:before {
  content: "\f25a";
}
.fa-hand-peace-o:before {
  content: "\f25b";
}
.fa-trademark:before {
  content: "\f25c";
}
.fa-registered:before {
  content: "\f25d";
}
.fa-creative-commons:before {
  content: "\f25e";
}
.fa-gg:before {
  content: "\f260";
}
.fa-gg-circle:before {
  content: "\f261";
}
.fa-tripadvisor:before {
  content: "\f262";
}
.fa-odnoklassniki:before {
  content: "\f263";
}
.fa-odnoklassniki-square:before {
  content: "\f264";
}
.fa-get-pocket:before {
  content: "\f265";
}
.fa-wikipedia-w:before {
  content: "\f266";
}
.fa-safari:before {
  content: "\f267";
}
.fa-chrome:before {
  content: "\f268";
}
.fa-firefox:before {
  content: "\f269";
}
.fa-opera:before {
  content: "\f26a";
}
.fa-internet-explorer:before {
  content: "\f26b";
}
.fa-tv:before,
.fa-television:before {
  content: "\f26c";
}
.fa-contao:before {
  content: "\f26d";
}
.fa-500px:before {
  content: "\f26e";
}
.fa-amazon:before {
  content: "\f270";
}
.fa-calendar-plus-o:before {
  content: "\f271";
}
.fa-calendar-minus-o:before {
  content: "\f272";
}
.fa-calendar-times-o:before {
  content: "\f273";
}
.fa-calendar-check-o:before {
  content: "\f274";
}
.fa-industry:before {
  content: "\f275";
}
.fa-map-pin:before {
  content: "\f276";
}
.fa-map-signs:before {
  content: "\f277";
}
.fa-map-o:before {
  content: "\f278";
}
.fa-map:before {
  content: "\f279";
}
.fa-commenting:before {
  content: "\f27a";
}
.fa-commenting-o:before {
  content: "\f27b";
}
.fa-houzz:before {
  content: "\f27c";
}
.fa-vimeo:before {
  content: "\f27d";
}
.fa-black-tie:before {
  content: "\f27e";
}
.fa-fonticons:before {
  content: "\f280";
}
.fa-reddit-alien:before {
  content: "\f281";
}
.fa-edge:before {
  content: "\f282";
}
.fa-credit-card-alt:before {
  content: "\f283";
}
.fa-codiepie:before {
  content: "\f284";
}
.fa-modx:before {
  content: "\f285";
}
.fa-fort-awesome:before {
  content: "\f286";
}
.fa-usb:before {
  content: "\f287";
}
.fa-product-hunt:before {
  content: "\f288";
}
.fa-mixcloud:before {
  content: "\f289";
}
.fa-scribd:before {
  content: "\f28a";
}
.fa-pause-circle:before {
  content: "\f28b";
}
.fa-pause-circle-o:before {
  content: "\f28c";
}
.fa-stop-circle:before {
  content: "\f28d";
}
.fa-stop-circle-o:before {
  content: "\f28e";
}
.fa-shopping-bag:before {
  content: "\f290";
}
.fa-shopping-basket:before {
  content: "\f291";
}
.fa-hashtag:before {
  content: "\f292";
}
.fa-bluetooth:before {
  content: "\f293";
}
.fa-bluetooth-b:before {
  content: "\f294";
}
.fa-percent:before {
  content: "\f295";
}
.fa-gitlab:before {
  content: "\f296";
}
.fa-wpbeginner:before {
  content: "\f297";
}
.fa-wpforms:before {
  content: "\f298";
}
.fa-envira:before {
  content: "\f299";
}
.fa-universal-access:before {
  content: "\f29a";
}
.fa-wheelchair-alt:before {
  content: "\f29b";
}
.fa-question-circle-o:before {
  content: "\f29c";
}
.fa-blind:before {
  content: "\f29d";
}
.fa-audio-description:before {
  content: "\f29e";
}
.fa-volume-control-phone:before {
  content: "\f2a0";
}
.fa-braille:before {
  content: "\f2a1";
}
.fa-assistive-listening-systems:before {
  content: "\f2a2";
}
.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}
.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "\f2a4";
}
.fa-glide:before {
  content: "\f2a5";
}
.fa-glide-g:before {
  content: "\f2a6";
}
.fa-signing:before,
.fa-sign-language:before {
  content: "\f2a7";
}
.fa-low-vision:before {
  content: "\f2a8";
}
.fa-viadeo:before {
  content: "\f2a9";
}
.fa-viadeo-square:before {
  content: "\f2aa";
}
.fa-snapchat:before {
  content: "\f2ab";
}
.fa-snapchat-ghost:before {
  content: "\f2ac";
}
.fa-snapchat-square:before {
  content: "\f2ad";
}
.fa-pied-piper:before {
  content: "\f2ae";
}
.fa-first-order:before {
  content: "\f2b0";
}
.fa-yoast:before {
  content: "\f2b1";
}
.fa-themeisle:before {
  content: "\f2b2";
}
.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "\f2b3";
}
.fa-fa:before,
.fa-font-awesome:before {
  content: "\f2b4";
}
.fa-handshake-o:before {
  content: "\f2b5";
}
.fa-envelope-open:before {
  content: "\f2b6";
}
.fa-envelope-open-o:before {
  content: "\f2b7";
}
.fa-linode:before {
  content: "\f2b8";
}
.fa-address-book:before {
  content: "\f2b9";
}
.fa-address-book-o:before {
  content: "\f2ba";
}
.fa-vcard:before,
.fa-address-card:before {
  content: "\f2bb";
}
.fa-vcard-o:before,
.fa-address-card-o:before {
  content: "\f2bc";
}
.fa-user-circle:before {
  content: "\f2bd";
}
.fa-user-circle-o:before {
  content: "\f2be";
}
.fa-user-o:before {
  content: "\f2c0";
}
.fa-id-badge:before {
  content: "\f2c1";
}
.fa-drivers-license:before,
.fa-id-card:before {
  content: "\f2c2";
}
.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: "\f2c3";
}
.fa-quora:before {
  content: "\f2c4";
}
.fa-free-code-camp:before {
  content: "\f2c5";
}
.fa-telegram:before {
  content: "\f2c6";
}
.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: "\f2c7";
}
.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}
.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: "\f2c9";
}
.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: "\f2ca";
}
.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: "\f2cb";
}
.fa-shower:before {
  content: "\f2cc";
}
.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: "\f2cd";
}
.fa-podcast:before {
  content: "\f2ce";
}
.fa-window-maximize:before {
  content: "\f2d0";
}
.fa-window-minimize:before {
  content: "\f2d1";
}
.fa-window-restore:before {
  content: "\f2d2";
}
.fa-times-rectangle:before,
.fa-window-close:before {
  content: "\f2d3";
}
.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: "\f2d4";
}
.fa-bandcamp:before {
  content: "\f2d5";
}
.fa-grav:before {
  content: "\f2d6";
}
.fa-etsy:before {
  content: "\f2d7";
}
.fa-imdb:before {
  content: "\f2d8";
}
.fa-ravelry:before {
  content: "\f2d9";
}
.fa-eercast:before {
  content: "\f2da";
}
.fa-microchip:before {
  content: "\f2db";
}
.fa-snowflake-o:before {
  content: "\f2dc";
}
.fa-superpowers:before {
  content: "\f2dd";
}
.fa-wpexplorer:before {
  content: "\f2de";
}
.fa-meetup:before {
  content: "\f2e0";
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

}}}
https://www.youtube.com/watch?v=fAHLwvDydsA