├── files └── holder.txt.txt ├── .settings └── com.aptana.editor.php.prefs ├── favicon.ico ├── img ├── Thumbs.db ├── number_0.png ├── number_1.png ├── number_10.png ├── number_11.png ├── number_12.png ├── number_13.png ├── number_14.png ├── number_15.png ├── number_16.png ├── number_17.png ├── number_18.png ├── number_19.png ├── number_2.png ├── number_20.png ├── number_21.png ├── number_22.png ├── number_23.png ├── number_24.png ├── number_25.png ├── number_26.png ├── number_27.png ├── number_28.png ├── number_29.png ├── number_3.png ├── number_30.png ├── number_31.png ├── number_32.png ├── number_33.png ├── number_34.png ├── number_35.png ├── number_36.png ├── number_37.png ├── number_38.png ├── number_39.png ├── number_4.png ├── number_40.png ├── number_41.png ├── number_42.png ├── number_43.png ├── number_44.png ├── number_45.png ├── number_46.png ├── number_47.png ├── number_48.png ├── number_49.png ├── number_5.png ├── number_50.png ├── number_51.png ├── number_52.png ├── number_53.png ├── number_54.png ├── number_55.png ├── number_56.png ├── number_57.png ├── number_58.png ├── number_59.png ├── number_6.png ├── number_60.png ├── number_61.png ├── number_62.png ├── number_63.png ├── number_64.png ├── number_65.png ├── number_66.png ├── number_67.png ├── number_68.png ├── number_69.png ├── number_7.png ├── number_70.png ├── number_71.png ├── number_72.png ├── number_73.png ├── number_74.png ├── number_75.png ├── number_76.png ├── number_77.png ├── number_78.png ├── number_79.png ├── number_8.png ├── number_80.png ├── number_81.png ├── number_82.png ├── number_83.png ├── number_84.png ├── number_85.png ├── number_86.png ├── number_87.png ├── number_88.png ├── number_89.png ├── number_9.png ├── number_90.png ├── number_91.png ├── number_92.png ├── number_93.png ├── number_94.png ├── number_95.png ├── number_96.png ├── number_97.png ├── number_98.png ├── number_99.png ├── apple-icon.png ├── number_100.png ├── favicon-16x16.png ├── favicon-32x32.png ├── favicon-96x96.png ├── apple-icon-57x57.png ├── apple-icon-60x60.png ├── apple-icon-72x72.png ├── apple-icon-76x76.png ├── md_n_icon-500px-md.ai ├── android-icon-36x36.png ├── android-icon-48x48.png ├── android-icon-72x72.png ├── android-icon-96x96.png ├── apple-icon-114x114.png ├── apple-icon-120x120.png ├── apple-icon-144x144.png ├── apple-icon-152x152.png ├── apple-icon-180x180.png ├── md_n_icon-500px-md.png ├── md_n_icon-512px-gps.ai ├── android-icon-144x144.png ├── android-icon-192x192.png ├── apple-icon-precomposed.png ├── md_n_icon-500px-gps-01.jpg ├── md_n_icon-512px-gps-01.png ├── md_n_icon-512px-gps-02.png ├── md_n_icon-500px-md-x2-01.png ├── md_n_icon-500px-md-x2-02-01.png ├── md_n_icon-500px-md-x2-03-01.png ├── md_n_icon-512px-gps-02-01.png ├── md_n_icon-promo-gps-01-01.jpg ├── md_n_icon-500px-horiz-gps-01.png ├── md_n_icon-500px-horiz-gps-02.png ├── md_n_icon-500px-horiz-gps-01-01.png └── md_n_icon-500px-horiz-gps-03-01.png ├── logos ├── Thumbs.db ├── logo.png ├── MD_2_brand.png ├── logo-white.png ├── number_0.png ├── number_1.png ├── number_10.png ├── number_100.png ├── number_11.png ├── number_12.png ├── number_13.png ├── number_14.png ├── number_15.png ├── number_16.png ├── number_17.png ├── number_18.png ├── number_19.png ├── number_2.png ├── number_20.png ├── number_21.png ├── number_22.png ├── number_23.png ├── number_24.png ├── number_25.png ├── number_26.png ├── number_27.png ├── number_28.png ├── number_29.png ├── number_3.png ├── number_30.png ├── number_31.png ├── number_32.png ├── number_33.png ├── number_34.png ├── number_35.png ├── number_36.png ├── number_37.png ├── number_38.png ├── number_39.png ├── number_4.png ├── number_40.png ├── number_41.png ├── number_42.png ├── number_43.png ├── number_44.png ├── number_45.png ├── number_46.png ├── number_47.png ├── number_48.png ├── number_49.png ├── number_5.png ├── number_50.png ├── number_51.png ├── number_52.png ├── number_53.png ├── number_54.png ├── number_55.png ├── number_56.png ├── number_57.png ├── number_58.png ├── number_59.png ├── number_6.png ├── number_60.png ├── number_61.png ├── number_62.png ├── number_63.png ├── number_64.png ├── number_65.png ├── number_66.png ├── number_67.png ├── number_68.png ├── number_69.png ├── number_7.png ├── number_70.png ├── number_71.png ├── number_72.png ├── number_73.png ├── number_74.png ├── number_75.png ├── number_76.png ├── number_77.png ├── number_78.png ├── number_79.png ├── number_8.png ├── number_80.png ├── number_81.png ├── number_82.png ├── number_83.png ├── number_84.png ├── number_85.png ├── number_86.png ├── number_87.png ├── number_88.png ├── number_89.png ├── number_9.png ├── number_90.png ├── number_91.png ├── number_92.png ├── number_93.png ├── number_94.png ├── number_95.png ├── number_96.png ├── number_97.png ├── number_98.png ├── number_99.png ├── MD_2_no_text.jpg ├── MD_2_no_text.png ├── MD_2_horizontal.jpg ├── MD_2_horizontal.png ├── md_n_icon-500px-md.ai ├── md_n_icon-500px-md.png ├── md_n_icon-512px-gps.ai ├── MD_2_horizontal_white.jpg ├── MD_2_horizontal_white.png ├── md_n_icon-500px-gps-01.jpg ├── md_n_icon-512px-gps-01.png ├── md_n_icon-512px-gps-02.png ├── MD_2_horizontal_lg_text.jpg ├── MD_2_horizontal_lg_text.png ├── md_n_icon-500px-md-x2-01.png ├── md_n_icon-512px-gps-02-01.png ├── md_n_icon-promo-gps-01-01.jpg ├── md_n_icon-500px-md-x2-02-01.png ├── md_n_icon-500px-md-x2-03-01.png ├── MD_2_horizontal_white_lg_text.jpg ├── MD_2_horizontal_white_lg_text.png ├── md_n_icon-500px-horiz-gps-01.png ├── md_n_icon-500px-horiz-gps-02.png ├── md_n_icon-500px-horiz-gps-01-01.png ├── md_n_icon-500px-horiz-gps-03-01.png └── MD_2_horizontal_white_lg_text_lightercolors.png ├── README.md ├── src ├── set_session_var.php ├── ms-icon-70x70.png ├── ms-icon-144x144.png ├── ms-icon-150x150.png ├── ms-icon-310x310.png ├── comodo_secure_113x59_white.png ├── browserconfig.xml ├── loginverf.php ├── logout.php ├── generate_error.php ├── clear_locationlog.php ├── send_message.php ├── send_message_post.php ├── checkpicload.php ├── checker.php ├── checkfileload.php ├── switchdevice.php ├── checker2.php ├── getpic.php ├── send_message_2.php ├── getmdversion.php ├── audioecho.php ├── contactsdata_np.php ├── manifest.json ├── devicechangename.php ├── getfile.php ├── audiouploadready.php ├── register.php ├── deviceinfodata.php ├── calllogdata.php ├── fileupload.php ├── smsdata.php ├── viewfilesdata.php ├── contactsdata.php ├── applistdata.php ├── browserhistorydata.php ├── locationlogdata.php ├── goodbye.php ├── updatepic.php ├── deletedevice.php ├── command.php ├── passwordchange.php ├── phone_contactsmode.js ├── deletedeviceverify.php ├── applistx.php └── readcontactsx.php ├── lib ├── intl-tel-input │ ├── img │ │ ├── flags.png │ │ └── flags@2x.png │ └── css │ │ └── demo.css ├── bootstrap-3-typeahead │ ├── bower.json │ ├── .jshintrc │ ├── composer.json │ ├── .gitignore │ ├── Gruntfile.js │ ├── package.json │ ├── .jscsrc │ └── bootstrap3-typeahead.min.js ├── c │ ├── Makefile │ └── crypt_private.c ├── bootstrap-sortable │ ├── bower.json │ ├── license.md │ ├── Contents │ │ └── bootstrap-sortable.css │ └── README.md ├── test.php ├── Geohash.js ├── js_crookies.js └── PasswordHash.php ├── form.php ├── receivers ├── postapps.php ├── post.php ├── postcalllog.php ├── postpicturedir.php ├── postsmssent.php ├── postlocation.php ├── posthistory.php ├── postsms.php └── postdeviceinfo.php ├── .htaccess ├── config.php ├── .project ├── GCM.php └── access.php /files/holder.txt.txt: -------------------------------------------------------------------------------- 1 | directory holder 2 | -------------------------------------------------------------------------------- /.settings/com.aptana.editor.php.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | phpVersion=php5.4 3 | -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/favicon.ico -------------------------------------------------------------------------------- /img/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/Thumbs.db -------------------------------------------------------------------------------- /logos/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/Thumbs.db -------------------------------------------------------------------------------- /logos/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/logo.png -------------------------------------------------------------------------------- /img/number_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_0.png -------------------------------------------------------------------------------- /img/number_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_1.png -------------------------------------------------------------------------------- /img/number_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_10.png -------------------------------------------------------------------------------- /img/number_11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_11.png -------------------------------------------------------------------------------- /img/number_12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_12.png -------------------------------------------------------------------------------- /img/number_13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_13.png -------------------------------------------------------------------------------- /img/number_14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_14.png -------------------------------------------------------------------------------- /img/number_15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_15.png -------------------------------------------------------------------------------- /img/number_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_16.png -------------------------------------------------------------------------------- /img/number_17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_17.png -------------------------------------------------------------------------------- /img/number_18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_18.png -------------------------------------------------------------------------------- /img/number_19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_19.png -------------------------------------------------------------------------------- /img/number_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_2.png -------------------------------------------------------------------------------- /img/number_20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_20.png -------------------------------------------------------------------------------- /img/number_21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_21.png -------------------------------------------------------------------------------- /img/number_22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_22.png -------------------------------------------------------------------------------- /img/number_23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_23.png -------------------------------------------------------------------------------- /img/number_24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_24.png -------------------------------------------------------------------------------- /img/number_25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_25.png -------------------------------------------------------------------------------- /img/number_26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_26.png -------------------------------------------------------------------------------- /img/number_27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_27.png -------------------------------------------------------------------------------- /img/number_28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_28.png -------------------------------------------------------------------------------- /img/number_29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_29.png -------------------------------------------------------------------------------- /img/number_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_3.png -------------------------------------------------------------------------------- /img/number_30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_30.png -------------------------------------------------------------------------------- /img/number_31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_31.png -------------------------------------------------------------------------------- /img/number_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_32.png -------------------------------------------------------------------------------- /img/number_33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_33.png -------------------------------------------------------------------------------- /img/number_34.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_34.png -------------------------------------------------------------------------------- /img/number_35.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_35.png -------------------------------------------------------------------------------- /img/number_36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_36.png -------------------------------------------------------------------------------- /img/number_37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_37.png -------------------------------------------------------------------------------- /img/number_38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_38.png -------------------------------------------------------------------------------- /img/number_39.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_39.png -------------------------------------------------------------------------------- /img/number_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_4.png -------------------------------------------------------------------------------- /img/number_40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_40.png -------------------------------------------------------------------------------- /img/number_41.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_41.png -------------------------------------------------------------------------------- /img/number_42.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_42.png -------------------------------------------------------------------------------- /img/number_43.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_43.png -------------------------------------------------------------------------------- /img/number_44.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_44.png -------------------------------------------------------------------------------- /img/number_45.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_45.png -------------------------------------------------------------------------------- /img/number_46.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_46.png -------------------------------------------------------------------------------- /img/number_47.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_47.png -------------------------------------------------------------------------------- /img/number_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_48.png -------------------------------------------------------------------------------- /img/number_49.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_49.png -------------------------------------------------------------------------------- /img/number_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_5.png -------------------------------------------------------------------------------- /img/number_50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_50.png -------------------------------------------------------------------------------- /img/number_51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_51.png -------------------------------------------------------------------------------- /img/number_52.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_52.png -------------------------------------------------------------------------------- /img/number_53.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_53.png -------------------------------------------------------------------------------- /img/number_54.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_54.png -------------------------------------------------------------------------------- /img/number_55.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_55.png -------------------------------------------------------------------------------- /img/number_56.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_56.png -------------------------------------------------------------------------------- /img/number_57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_57.png -------------------------------------------------------------------------------- /img/number_58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_58.png -------------------------------------------------------------------------------- /img/number_59.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_59.png -------------------------------------------------------------------------------- /img/number_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_6.png -------------------------------------------------------------------------------- /img/number_60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_60.png -------------------------------------------------------------------------------- /img/number_61.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_61.png -------------------------------------------------------------------------------- /img/number_62.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_62.png -------------------------------------------------------------------------------- /img/number_63.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_63.png -------------------------------------------------------------------------------- /img/number_64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_64.png -------------------------------------------------------------------------------- /img/number_65.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_65.png -------------------------------------------------------------------------------- /img/number_66.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_66.png -------------------------------------------------------------------------------- /img/number_67.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_67.png -------------------------------------------------------------------------------- /img/number_68.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_68.png -------------------------------------------------------------------------------- /img/number_69.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_69.png -------------------------------------------------------------------------------- /img/number_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_7.png -------------------------------------------------------------------------------- /img/number_70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_70.png -------------------------------------------------------------------------------- /img/number_71.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_71.png -------------------------------------------------------------------------------- /img/number_72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_72.png -------------------------------------------------------------------------------- /img/number_73.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_73.png -------------------------------------------------------------------------------- /img/number_74.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_74.png -------------------------------------------------------------------------------- /img/number_75.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_75.png -------------------------------------------------------------------------------- /img/number_76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_76.png -------------------------------------------------------------------------------- /img/number_77.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_77.png -------------------------------------------------------------------------------- /img/number_78.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_78.png -------------------------------------------------------------------------------- /img/number_79.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_79.png -------------------------------------------------------------------------------- /img/number_8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_8.png -------------------------------------------------------------------------------- /img/number_80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_80.png -------------------------------------------------------------------------------- /img/number_81.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_81.png -------------------------------------------------------------------------------- /img/number_82.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_82.png -------------------------------------------------------------------------------- /img/number_83.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_83.png -------------------------------------------------------------------------------- /img/number_84.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_84.png -------------------------------------------------------------------------------- /img/number_85.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_85.png -------------------------------------------------------------------------------- /img/number_86.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_86.png -------------------------------------------------------------------------------- /img/number_87.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_87.png -------------------------------------------------------------------------------- /img/number_88.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_88.png -------------------------------------------------------------------------------- /img/number_89.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_89.png -------------------------------------------------------------------------------- /img/number_9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_9.png -------------------------------------------------------------------------------- /img/number_90.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_90.png -------------------------------------------------------------------------------- /img/number_91.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_91.png -------------------------------------------------------------------------------- /img/number_92.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_92.png -------------------------------------------------------------------------------- /img/number_93.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_93.png -------------------------------------------------------------------------------- /img/number_94.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_94.png -------------------------------------------------------------------------------- /img/number_95.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_95.png -------------------------------------------------------------------------------- /img/number_96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_96.png -------------------------------------------------------------------------------- /img/number_97.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_97.png -------------------------------------------------------------------------------- /img/number_98.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_98.png -------------------------------------------------------------------------------- /img/number_99.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_99.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | This was a college project that I enjoyed working on with some friends. Don't judge too harshly :) 2 | -------------------------------------------------------------------------------- /img/apple-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon.png -------------------------------------------------------------------------------- /img/number_100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/number_100.png -------------------------------------------------------------------------------- /logos/MD_2_brand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_brand.png -------------------------------------------------------------------------------- /logos/logo-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/logo-white.png -------------------------------------------------------------------------------- /logos/number_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_0.png -------------------------------------------------------------------------------- /logos/number_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_1.png -------------------------------------------------------------------------------- /logos/number_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_10.png -------------------------------------------------------------------------------- /logos/number_100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_100.png -------------------------------------------------------------------------------- /logos/number_11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_11.png -------------------------------------------------------------------------------- /logos/number_12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_12.png -------------------------------------------------------------------------------- /logos/number_13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_13.png -------------------------------------------------------------------------------- /logos/number_14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_14.png -------------------------------------------------------------------------------- /logos/number_15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_15.png -------------------------------------------------------------------------------- /logos/number_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_16.png -------------------------------------------------------------------------------- /logos/number_17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_17.png -------------------------------------------------------------------------------- /logos/number_18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_18.png -------------------------------------------------------------------------------- /logos/number_19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_19.png -------------------------------------------------------------------------------- /logos/number_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_2.png -------------------------------------------------------------------------------- /logos/number_20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_20.png -------------------------------------------------------------------------------- /logos/number_21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_21.png -------------------------------------------------------------------------------- /logos/number_22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_22.png -------------------------------------------------------------------------------- /logos/number_23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_23.png -------------------------------------------------------------------------------- /logos/number_24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_24.png -------------------------------------------------------------------------------- /logos/number_25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_25.png -------------------------------------------------------------------------------- /logos/number_26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_26.png -------------------------------------------------------------------------------- /logos/number_27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_27.png -------------------------------------------------------------------------------- /logos/number_28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_28.png -------------------------------------------------------------------------------- /logos/number_29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_29.png -------------------------------------------------------------------------------- /logos/number_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_3.png -------------------------------------------------------------------------------- /logos/number_30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_30.png -------------------------------------------------------------------------------- /logos/number_31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_31.png -------------------------------------------------------------------------------- /logos/number_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_32.png -------------------------------------------------------------------------------- /logos/number_33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_33.png -------------------------------------------------------------------------------- /logos/number_34.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_34.png -------------------------------------------------------------------------------- /logos/number_35.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_35.png -------------------------------------------------------------------------------- /logos/number_36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_36.png -------------------------------------------------------------------------------- /logos/number_37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_37.png -------------------------------------------------------------------------------- /logos/number_38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_38.png -------------------------------------------------------------------------------- /logos/number_39.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_39.png -------------------------------------------------------------------------------- /logos/number_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_4.png -------------------------------------------------------------------------------- /logos/number_40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_40.png -------------------------------------------------------------------------------- /logos/number_41.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_41.png -------------------------------------------------------------------------------- /logos/number_42.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_42.png -------------------------------------------------------------------------------- /logos/number_43.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_43.png -------------------------------------------------------------------------------- /logos/number_44.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_44.png -------------------------------------------------------------------------------- /logos/number_45.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_45.png -------------------------------------------------------------------------------- /logos/number_46.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_46.png -------------------------------------------------------------------------------- /logos/number_47.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_47.png -------------------------------------------------------------------------------- /logos/number_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_48.png -------------------------------------------------------------------------------- /logos/number_49.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_49.png -------------------------------------------------------------------------------- /logos/number_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_5.png -------------------------------------------------------------------------------- /logos/number_50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_50.png -------------------------------------------------------------------------------- /logos/number_51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_51.png -------------------------------------------------------------------------------- /logos/number_52.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_52.png -------------------------------------------------------------------------------- /logos/number_53.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_53.png -------------------------------------------------------------------------------- /logos/number_54.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_54.png -------------------------------------------------------------------------------- /logos/number_55.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_55.png -------------------------------------------------------------------------------- /logos/number_56.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_56.png -------------------------------------------------------------------------------- /logos/number_57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_57.png -------------------------------------------------------------------------------- /logos/number_58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_58.png -------------------------------------------------------------------------------- /logos/number_59.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_59.png -------------------------------------------------------------------------------- /logos/number_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_6.png -------------------------------------------------------------------------------- /logos/number_60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_60.png -------------------------------------------------------------------------------- /logos/number_61.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_61.png -------------------------------------------------------------------------------- /logos/number_62.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_62.png -------------------------------------------------------------------------------- /logos/number_63.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_63.png -------------------------------------------------------------------------------- /logos/number_64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_64.png -------------------------------------------------------------------------------- /logos/number_65.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_65.png -------------------------------------------------------------------------------- /logos/number_66.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_66.png -------------------------------------------------------------------------------- /logos/number_67.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_67.png -------------------------------------------------------------------------------- /logos/number_68.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_68.png -------------------------------------------------------------------------------- /logos/number_69.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_69.png -------------------------------------------------------------------------------- /logos/number_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_7.png -------------------------------------------------------------------------------- /logos/number_70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_70.png -------------------------------------------------------------------------------- /logos/number_71.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_71.png -------------------------------------------------------------------------------- /logos/number_72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_72.png -------------------------------------------------------------------------------- /logos/number_73.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_73.png -------------------------------------------------------------------------------- /logos/number_74.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_74.png -------------------------------------------------------------------------------- /logos/number_75.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_75.png -------------------------------------------------------------------------------- /logos/number_76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_76.png -------------------------------------------------------------------------------- /logos/number_77.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_77.png -------------------------------------------------------------------------------- /logos/number_78.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_78.png -------------------------------------------------------------------------------- /logos/number_79.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_79.png -------------------------------------------------------------------------------- /logos/number_8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_8.png -------------------------------------------------------------------------------- /logos/number_80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_80.png -------------------------------------------------------------------------------- /logos/number_81.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_81.png -------------------------------------------------------------------------------- /logos/number_82.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_82.png -------------------------------------------------------------------------------- /logos/number_83.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_83.png -------------------------------------------------------------------------------- /logos/number_84.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_84.png -------------------------------------------------------------------------------- /logos/number_85.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_85.png -------------------------------------------------------------------------------- /logos/number_86.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_86.png -------------------------------------------------------------------------------- /logos/number_87.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_87.png -------------------------------------------------------------------------------- /logos/number_88.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_88.png -------------------------------------------------------------------------------- /logos/number_89.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_89.png -------------------------------------------------------------------------------- /logos/number_9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_9.png -------------------------------------------------------------------------------- /logos/number_90.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_90.png -------------------------------------------------------------------------------- /logos/number_91.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_91.png -------------------------------------------------------------------------------- /logos/number_92.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_92.png -------------------------------------------------------------------------------- /logos/number_93.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_93.png -------------------------------------------------------------------------------- /logos/number_94.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_94.png -------------------------------------------------------------------------------- /logos/number_95.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_95.png -------------------------------------------------------------------------------- /logos/number_96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_96.png -------------------------------------------------------------------------------- /logos/number_97.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_97.png -------------------------------------------------------------------------------- /logos/number_98.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_98.png -------------------------------------------------------------------------------- /logos/number_99.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/number_99.png -------------------------------------------------------------------------------- /src/set_session_var.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /img/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/favicon-16x16.png -------------------------------------------------------------------------------- /img/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/favicon-32x32.png -------------------------------------------------------------------------------- /img/favicon-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/favicon-96x96.png -------------------------------------------------------------------------------- /logos/MD_2_no_text.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_no_text.jpg -------------------------------------------------------------------------------- /logos/MD_2_no_text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_no_text.png -------------------------------------------------------------------------------- /src/ms-icon-70x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/src/ms-icon-70x70.png -------------------------------------------------------------------------------- /img/apple-icon-57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-57x57.png -------------------------------------------------------------------------------- /img/apple-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-60x60.png -------------------------------------------------------------------------------- /img/apple-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-72x72.png -------------------------------------------------------------------------------- /img/apple-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-76x76.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-md.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-md.ai -------------------------------------------------------------------------------- /logos/MD_2_horizontal.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal.jpg -------------------------------------------------------------------------------- /logos/MD_2_horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal.png -------------------------------------------------------------------------------- /src/ms-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/src/ms-icon-144x144.png -------------------------------------------------------------------------------- /src/ms-icon-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/src/ms-icon-150x150.png -------------------------------------------------------------------------------- /src/ms-icon-310x310.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/src/ms-icon-310x310.png -------------------------------------------------------------------------------- /img/android-icon-36x36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/android-icon-36x36.png -------------------------------------------------------------------------------- /img/android-icon-48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/android-icon-48x48.png -------------------------------------------------------------------------------- /img/android-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/android-icon-72x72.png -------------------------------------------------------------------------------- /img/android-icon-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/android-icon-96x96.png -------------------------------------------------------------------------------- /img/apple-icon-114x114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-114x114.png -------------------------------------------------------------------------------- /img/apple-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-120x120.png -------------------------------------------------------------------------------- /img/apple-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-144x144.png -------------------------------------------------------------------------------- /img/apple-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-152x152.png -------------------------------------------------------------------------------- /img/apple-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-180x180.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-md.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-md.png -------------------------------------------------------------------------------- /img/md_n_icon-512px-gps.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-512px-gps.ai -------------------------------------------------------------------------------- /logos/md_n_icon-500px-md.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-md.ai -------------------------------------------------------------------------------- /img/android-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/android-icon-144x144.png -------------------------------------------------------------------------------- /img/android-icon-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/android-icon-192x192.png -------------------------------------------------------------------------------- /img/apple-icon-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/apple-icon-precomposed.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-gps-01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-gps-01.jpg -------------------------------------------------------------------------------- /img/md_n_icon-512px-gps-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-512px-gps-01.png -------------------------------------------------------------------------------- /img/md_n_icon-512px-gps-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-512px-gps-02.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-md.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-md.png -------------------------------------------------------------------------------- /logos/md_n_icon-512px-gps.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-512px-gps.ai -------------------------------------------------------------------------------- /img/md_n_icon-500px-md-x2-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-md-x2-01.png -------------------------------------------------------------------------------- /lib/intl-tel-input/img/flags.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/lib/intl-tel-input/img/flags.png -------------------------------------------------------------------------------- /logos/MD_2_horizontal_white.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal_white.jpg -------------------------------------------------------------------------------- /logos/MD_2_horizontal_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal_white.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-gps-01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-gps-01.jpg -------------------------------------------------------------------------------- /logos/md_n_icon-512px-gps-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-512px-gps-01.png -------------------------------------------------------------------------------- /logos/md_n_icon-512px-gps-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-512px-gps-02.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-md-x2-02-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-md-x2-02-01.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-md-x2-03-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-md-x2-03-01.png -------------------------------------------------------------------------------- /img/md_n_icon-512px-gps-02-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-512px-gps-02-01.png -------------------------------------------------------------------------------- /img/md_n_icon-promo-gps-01-01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-promo-gps-01-01.jpg -------------------------------------------------------------------------------- /lib/intl-tel-input/img/flags@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/lib/intl-tel-input/img/flags@2x.png -------------------------------------------------------------------------------- /logos/MD_2_horizontal_lg_text.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal_lg_text.jpg -------------------------------------------------------------------------------- /logos/MD_2_horizontal_lg_text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal_lg_text.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-md-x2-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-md-x2-01.png -------------------------------------------------------------------------------- /logos/md_n_icon-512px-gps-02-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-512px-gps-02-01.png -------------------------------------------------------------------------------- /logos/md_n_icon-promo-gps-01-01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-promo-gps-01-01.jpg -------------------------------------------------------------------------------- /src/comodo_secure_113x59_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/src/comodo_secure_113x59_white.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-horiz-gps-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-horiz-gps-01.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-horiz-gps-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-horiz-gps-02.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-md-x2-02-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-md-x2-02-01.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-md-x2-03-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-md-x2-03-01.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-horiz-gps-01-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-horiz-gps-01-01.png -------------------------------------------------------------------------------- /img/md_n_icon-500px-horiz-gps-03-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/img/md_n_icon-500px-horiz-gps-03-01.png -------------------------------------------------------------------------------- /logos/MD_2_horizontal_white_lg_text.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal_white_lg_text.jpg -------------------------------------------------------------------------------- /logos/MD_2_horizontal_white_lg_text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal_white_lg_text.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-horiz-gps-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-horiz-gps-01.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-horiz-gps-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-horiz-gps-02.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-horiz-gps-01-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-horiz-gps-01-01.png -------------------------------------------------------------------------------- /logos/md_n_icon-500px-horiz-gps-03-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/md_n_icon-500px-horiz-gps-03-01.png -------------------------------------------------------------------------------- /logos/MD_2_horizontal_white_lg_text_lightercolors.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tyler124/Monitordroid-Web-Application/HEAD/logos/MD_2_horizontal_white_lg_text_lightercolors.png -------------------------------------------------------------------------------- /form.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Monitordroid Form 6 | 7 | 8 | 9 | 10 |

This would be a form where you'd enter information

11 | 12 | 13 | -------------------------------------------------------------------------------- /receivers/postapps.php: -------------------------------------------------------------------------------- 1 | insertInstalledApps($rName, $installedApps); -------------------------------------------------------------------------------- /receivers/post.php: -------------------------------------------------------------------------------- 1 | insertContacts($rName, $data); 9 | ?> -------------------------------------------------------------------------------- /receivers/postcalllog.php: -------------------------------------------------------------------------------- 1 | insertCallLogs($rName, $data); 9 | ?> -------------------------------------------------------------------------------- /.htaccess: -------------------------------------------------------------------------------- 1 | Header add Access-Control-Allow-Origin "*" 2 | Header add Access-Control-Allow-Methods: "GET,POST,OPTIONS,DELETE,PUT" 3 | # File modified on Thu Jul 23 11:30:39 2015 by server 4 | # For security reasons, mod_php is not used on this server. Use a php.ini file for php directives 5 | -------------------------------------------------------------------------------- /receivers/postpicturedir.php: -------------------------------------------------------------------------------- 1 | insertPictureDir($rName, $pictureDir); 9 | ?> -------------------------------------------------------------------------------- /src/browserconfig.xml: -------------------------------------------------------------------------------- 1 | 2 | #ffffff -------------------------------------------------------------------------------- /src/loginverf.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /receivers/postsmssent.php: -------------------------------------------------------------------------------- 1 | insertSentSMS($rName, $data); 14 | 15 | ?> -------------------------------------------------------------------------------- /src/logout.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/bootstrap-3-typeahead/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap3-typeahead", 3 | "version": "3.1.1", 4 | "authors": [ 5 | "bassjobsen" 6 | ], 7 | "main": [ 8 | "bootstrap3-typeahead.js" 9 | ], 10 | "ignore": [ 11 | "**/.*", 12 | "node_modules", 13 | "bower_components", 14 | "test", 15 | "tests" 16 | ], 17 | "dependencies": { 18 | "jquery": ">=1.7.0" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /receivers/postlocation.php: -------------------------------------------------------------------------------- 1 | insertLocation($rName, $lat, $long, $time, $accuracy); 15 | 16 | 17 | ?> -------------------------------------------------------------------------------- /lib/bootstrap-3-typeahead/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "asi" : true, 3 | "browser" : true, 4 | "node" : true, 5 | "eqeqeq" : false, 6 | "eqnull" : true, 7 | "es3" : true, 8 | "expr" : true, 9 | "jquery" : true, 10 | "latedef" : true, 11 | "laxbreak" : true, 12 | "nonbsp" : true, 13 | "strict" : true, 14 | "undef" : true, 15 | "unused" : false, 16 | "predef" : ["define"] 17 | } 18 | -------------------------------------------------------------------------------- /src/clear_locationlog.php: -------------------------------------------------------------------------------- 1 | clearLocationLogs($regid); 12 | -------------------------------------------------------------------------------- /src/send_message.php: -------------------------------------------------------------------------------- 1 | $message); 13 | 14 | $result = $gcm->send_notification($registration_ids, $message); 15 | 16 | echo $result; 17 | } 18 | ?> -------------------------------------------------------------------------------- /src/send_message_post.php: -------------------------------------------------------------------------------- 1 | $message); 12 | 13 | $result = $gcm->send_notification($registration_ids, $message); 14 | 15 | echo $result; 16 | } 17 | ?> -------------------------------------------------------------------------------- /src/checkpicload.php: -------------------------------------------------------------------------------- 1 | 0) { 22 | echo "true"; 23 | } 24 | else { 25 | echo "false"; 26 | } 27 | ?> -------------------------------------------------------------------------------- /config.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/c/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Written by Solar Designer and placed in the public domain. 3 | # See crypt_private.c for more information. 4 | # 5 | CC = gcc 6 | LD = $(CC) 7 | RM = rm -f 8 | CFLAGS = -Wall -O2 -fomit-frame-pointer -funroll-loops 9 | LDFLAGS = -s 10 | LIBS = -lcrypto 11 | 12 | all: crypt_private-test 13 | 14 | crypt_private-test: crypt_private-test.o 15 | $(LD) $(LDFLAGS) $(LIBS) crypt_private-test.o -o $@ 16 | 17 | crypt_private-test.o: crypt_private.c 18 | $(CC) -c $(CFLAGS) crypt_private.c -DTEST -o $@ 19 | 20 | clean: 21 | $(RM) crypt_private-test* 22 | -------------------------------------------------------------------------------- /src/checker.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Monitordroid 6 | 7 | 8 | 9 | Monitordroid: 10 | 11 | 12 |
13 |

Check if valid account: 14 | 15 |

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/checkfileload.php: -------------------------------------------------------------------------------- 1 | 0) { 23 | echo "true"; 24 | } 25 | else { 26 | echo "false"; 27 | } 28 | ?> -------------------------------------------------------------------------------- /lib/bootstrap-3-typeahead/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bassjobsen/bootstrap-3-typeahead", 3 | "type": "component", 4 | "license": "Apache-2.0", 5 | "description": "Bootstrap 3 Typeahead", 6 | "minimum-stability": "dev", 7 | "authors": [ 8 | { 9 | "name": "Bass Jobsen", 10 | "email": "bass@w3masters.nl" 11 | } 12 | ], 13 | "extra": { 14 | "component": { 15 | "files": [ 16 | "bootstrap3-typeahead.js", 17 | "bootstrap3-typeahead.min.js" 18 | ] 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/switchdevice.php: -------------------------------------------------------------------------------- 1 | userDeviceVerify($_POST["rowid"], $_SESSION["email"])) { 13 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 14 | exit(); 15 | } 16 | 17 | $_SESSION["rowid"] = $_POST["rowid"]; 18 | $_SESSION["registration"] = $_POST["registration"]; 19 | $_SESSION["name"] = $_POST["name"]; 20 | 21 | 22 | ?> -------------------------------------------------------------------------------- /src/checker2.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Monitordroid 6 | 7 | 8 | 9 | accountEmailExists($accountname)) { 16 | echo "true"; 17 | } 18 | else echo "false"; 19 | } 20 | ?> 21 | 22 | -------------------------------------------------------------------------------- /.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Monitordroid Web Application 4 | 5 | 6 | 7 | 8 | 9 | com.aptana.editor.php.aptanaPhpBuilder 10 | 11 | 12 | 13 | 14 | com.aptana.ide.core.unifiedBuilder 15 | 16 | 17 | 18 | 19 | 20 | com.aptana.editor.php.phpNature 21 | com.aptana.projects.webnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /lib/bootstrap-sortable/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap-sortable", 3 | "version": "1.11.2", 4 | "homepage": "https://github.com/drvic10k/bootstrap-sortable", 5 | "authors": [ 6 | "Matus Brlit " 7 | ], 8 | "description": "Adding sorting ability to HTML tables", 9 | "main": "Scripts/bootstrap-sortable.js", 10 | "keywords": [ 11 | "sort table", "sortable", "sortable table", "bootstrap sortable", "bootstrap-sortable" 12 | ], 13 | "license": "MIT", 14 | "ignore": [ 15 | "Scripts/moment.min.js" 16 | ], 17 | "dependencies": { 18 | "jquery": ">= 1.9.0", 19 | "moment": ">= 2.3.1" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/getpic.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/bootstrap-3-typeahead/.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore docs files 2 | _gh_pages 3 | _site 4 | .ruby-version 5 | 6 | # Numerous always-ignore extensions 7 | *.diff 8 | *.err 9 | *.log 10 | *.orig 11 | *.rej 12 | *.swo 13 | *.swp 14 | *.vi 15 | *.zip 16 | *~ 17 | 18 | # OS or Editor folders 19 | ._* 20 | .cache 21 | .DS_Store 22 | .idea 23 | .project 24 | .settings 25 | .tmproj 26 | *.esproj 27 | *.sublime-project 28 | *.sublime-workspace 29 | nbproject 30 | Thumbs.db 31 | 32 | # Komodo 33 | .komodotools 34 | *.komodoproject 35 | 36 | # grunt-html-validation 37 | validation-report.json 38 | validation-status.json 39 | 40 | # Folders to ignore 41 | bower_components 42 | node_modules 43 | -------------------------------------------------------------------------------- /src/send_message_2.php: -------------------------------------------------------------------------------- 1 | $message); 18 | 19 | $result = $gcm->send_notification($registration_ids, $message); 20 | 21 | echo $result; 22 | } 23 | ?> 24 | -------------------------------------------------------------------------------- /src/getmdversion.php: -------------------------------------------------------------------------------- 1 | getDataVersion($regId, $rowid); 14 | $mdVersion = $db->getMDVersion($regId, $rowid); 15 | 16 | if ($mdVersion != $dataVersion) { 17 | $db->clearDeviceData($regId); 18 | $db->setDataVersion($regId, $mdVersion); 19 | echo ($mdVersion . " Updated"); 20 | } 21 | else { 22 | echo $mdVersion; 23 | } 24 | 25 | ?> -------------------------------------------------------------------------------- /receivers/posthistory.php: -------------------------------------------------------------------------------- 1 | insertFirstBrowserHistory($rName, $firstupdatedata); 23 | } 24 | 25 | else { 26 | $db->insertBrowserHistory($rName, $browserHistory); 27 | } 28 | 29 | ?> -------------------------------------------------------------------------------- /src/audioecho.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/contactsdata_np.php: -------------------------------------------------------------------------------- 1 | getContacts($rName); 17 | 18 | $mxr = explode("}", $contactslist); 19 | $paragraphs = $mxr[0]; 20 | for ($i = 1; $i < count($mxr) - 1; $i += 1) { 21 | $paragraphs .= '},' . $mxr[$i]; 22 | } 23 | 24 | 25 | if ($paragraphs == "") { 26 | echo "[]"; 27 | } 28 | else { 29 | $paragraphs .= '}'; 30 | echo '[' . stripslashes($paragraphs) . ']'; 31 | } 32 | 33 | ?> -------------------------------------------------------------------------------- /src/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "App", 3 | "icons": [ 4 | { 5 | "src": "\/android-icon-36x36.png", 6 | "sizes": "36x36", 7 | "type": "image\/png", 8 | "density": "0.75" 9 | }, 10 | { 11 | "src": "\/android-icon-48x48.png", 12 | "sizes": "48x48", 13 | "type": "image\/png", 14 | "density": "1.0" 15 | }, 16 | { 17 | "src": "\/android-icon-72x72.png", 18 | "sizes": "72x72", 19 | "type": "image\/png", 20 | "density": "1.5" 21 | }, 22 | { 23 | "src": "\/android-icon-96x96.png", 24 | "sizes": "96x96", 25 | "type": "image\/png", 26 | "density": "2.0" 27 | }, 28 | { 29 | "src": "\/android-icon-144x144.png", 30 | "sizes": "144x144", 31 | "type": "image\/png", 32 | "density": "3.0" 33 | }, 34 | { 35 | "src": "\/android-icon-192x192.png", 36 | "sizes": "192x192", 37 | "type": "image\/png", 38 | "density": "4.0" 39 | } 40 | ] 41 | } -------------------------------------------------------------------------------- /receivers/postsms.php: -------------------------------------------------------------------------------- 1 | insertFirstSMS($rName, $firstupdatedata); 21 | } 22 | 23 | //If not, call the function that will concatenate the new SMS data onto the end of previous data 24 | else { 25 | $db->insertSMS($rName, $smsdata); 26 | } 27 | ?> -------------------------------------------------------------------------------- /src/devicechangename.php: -------------------------------------------------------------------------------- 1 | changeDeviceName($rowId, $email, $newName); 18 | 19 | if (!$res){ 20 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 21 | exit; 22 | } else { 23 | if (isset($_SESSION["rowid"]) && ($_SESSION["rowid"] == $rowId)) { 24 | $_SESSION["name"] = $newName; 25 | } 26 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 27 | exit; 28 | } 29 | ?> -------------------------------------------------------------------------------- /src/getfile.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/audiouploadready.php: -------------------------------------------------------------------------------- 1 | $updTime) { 27 | header($_SERVER["SERVER_PROTOCOL"] . " 204 No Content"); 28 | exit(); 29 | } 30 | setcookie("audio_filetime", $updTime); 31 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 32 | ?> -------------------------------------------------------------------------------- /receivers/postdeviceinfo.php: -------------------------------------------------------------------------------- 1 | insertBatteryLevel($rName, $batteryLevel); 21 | $db->insertPhoneNumber($rName, $phoneNumber); 22 | $db->insertNetworkOperator($rName, $networkOperator); 23 | $db->insertRadioType($rName, $radioType); 24 | $db->insertDeviceName($rName, $deviceName); 25 | $db->insertWifiSSID($rName, $wifiSSID); 26 | $db->insertWifiIP($rName, $wifiIP); 27 | $db->insertMonitordroidVersion($rName, $monitordroidVersion); 28 | $db->insertAndroidVersion($rName, $androidVersion); 29 | 30 | -------------------------------------------------------------------------------- /src/register.php: -------------------------------------------------------------------------------- 1 | storeUser($name, $email, $gcm_regid); 44 | 45 | 46 | 47 | $registatoin_ids = array($gcm_regid); 48 | 49 | $message = array("product" => "shirt"); 50 | 51 | 52 | 53 | $result = $gcm->send_notification($registatoin_ids, $message); 54 | 55 | 56 | 57 | echo $res; 58 | 59 | } else { 60 | 61 | // user details missing 62 | 63 | } 64 | 65 | ?> -------------------------------------------------------------------------------- /lib/bootstrap-3-typeahead/Gruntfile.js: -------------------------------------------------------------------------------- 1 | module.exports = function (grunt) { 2 | 'use strict'; 3 | 4 | // Force use of Unix newlines 5 | grunt.util.linefeed = '\n'; 6 | 7 | // Project configuration. 8 | grunt.initConfig({ 9 | 10 | // Metadata. 11 | pkg: grunt.file.readJSON('package.json'), 12 | 13 | 14 | jshint: { 15 | options: { 16 | jshintrc: '.jshintrc' 17 | }, 18 | src: ['bootstrap3-typeahead.js'] 19 | }, 20 | jscs: { 21 | src: "bootstrap3-typeahead.js", 22 | options: { 23 | config: ".jscsrc", 24 | } 25 | }, 26 | uglify: { 27 | options: { 28 | preserveComments: 'some' 29 | }, 30 | core: { 31 | files: { 32 | 'bootstrap3-typeahead.min.js': ['bootstrap3-typeahead.js'] 33 | } 34 | } 35 | } 36 | }); 37 | 38 | 39 | // These plugins provide necessary tasks. 40 | require('load-grunt-tasks')(grunt, { scope: 'devDependencies' }); 41 | //require('time-grunt')(grunt); 42 | grunt.registerTask('test', ['jshint', 'jscs']); 43 | 44 | // Default task. 45 | grunt.registerTask('default', ['test','uglify']); 46 | 47 | }; 48 | -------------------------------------------------------------------------------- /lib/bootstrap-3-typeahead/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap-3-typeahead", 3 | "description": "Bootstrap 3 Typeahead: The typeahead autocomplete plugin for Twitter's Bootstrap 2 ready to use with Bootstrap 3.", 4 | "version": "3.1.1", 5 | "keywords": [ 6 | "typeahead", 7 | "autocomplete", 8 | "plugin", 9 | "jquery", 10 | "bootstrap" 11 | ], 12 | "homepage": "https://github.com/bassjobsen/Bootstrap-3-Typeahead/", 13 | "author": "Bass Jobsen", 14 | "scripts": { 15 | "test": "grunt test" 16 | }, 17 | "repository": { 18 | "type": "git", 19 | "url": "https://github.com/bassjobsen/Bootstrap-3-Typeahead.git" 20 | }, 21 | "bugs": { 22 | "url": "https://github.com/bassjobsen/Bootstrap-3-Typeahead/issues" 23 | }, 24 | "license": { 25 | "type": "MIT", 26 | "url": "https://github.com/twbs/bootstrap/blob/master/LICENSE" 27 | }, 28 | "devDependencies": { 29 | "grunt": "~0.4.5", 30 | "grunt-contrib-jshint": "~0.10.0", 31 | "grunt-contrib-uglify": "~0.6.0", 32 | "grunt-jscs": "~0.8.1", 33 | "load-grunt-tasks": "~0.6.0" 34 | }, 35 | "engines": { 36 | "node": "~0.10.1" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/deviceinfodata.php: -------------------------------------------------------------------------------- 1 | getDeviceInformation($rName); 11 | ?> 12 | 13 |
14 |
Phone Number
15 |
16 |
Network Operator
17 |
18 |
Radio Type
19 |
20 |
Device Name
21 |
22 |
Wifi SSID
23 |
24 |
Wifi IP
25 |
26 |
Battery Level
27 |
28 |
Android Version
29 |
30 |
31 | -------------------------------------------------------------------------------- /lib/bootstrap-sortable/license.md: -------------------------------------------------------------------------------- 1 | Copyright (c) 2013 Matúš Brliť (drvic10k), bootstrap-sortable contributors 2 | 3 | Copyright (c) 2011-2013 Tim Wood, Iskren Chernev, Moment.js contributors 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10 | -------------------------------------------------------------------------------- /lib/intl-tel-input/css/demo.css: -------------------------------------------------------------------------------- 1 | * { 2 | box-sizing: border-box; 3 | -moz-box-sizing: border-box; } 4 | 5 | body { 6 | margin: 20px; 7 | font-size: 14px; 8 | font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; 9 | color: #555; } 10 | 11 | .hide { 12 | display: none; } 13 | 14 | pre { 15 | margin: 0 !important; 16 | display: inline-block; } 17 | 18 | .token.operator, 19 | .token.entity, 20 | .token.url, 21 | .language-css .token.string, 22 | .style .token.string, 23 | .token.variable { 24 | background: none; } 25 | 26 | input, button { 27 | height: 35px; 28 | margin: 0; 29 | padding: 6px 12px; 30 | border-radius: 2px; 31 | font-family: inherit; 32 | font-size: 100%; 33 | color: inherit; } 34 | input[disabled], button[disabled] { 35 | background-color: #eee; } 36 | 37 | input, select { 38 | border: 1px solid #CCC; 39 | width: 250px; } 40 | 41 | ::-webkit-input-placeholder { 42 | color: #BBB; } 43 | 44 | ::-moz-placeholder { 45 | /* Firefox 19+ */ 46 | color: #BBB; 47 | opacity: 1; } 48 | 49 | :-ms-input-placeholder { 50 | color: #BBB; } 51 | 52 | button { 53 | color: #FFF; 54 | background-color: #428BCA; 55 | border: 1px solid #357EBD; } 56 | button:hover { 57 | background-color: #3276B1; 58 | border-color: #285E8E; 59 | cursor: pointer; } 60 | 61 | #result { 62 | margin-bottom: 100px; } 63 | -------------------------------------------------------------------------------- /src/calllogdata.php: -------------------------------------------------------------------------------- 1 | userDeviceVerify($rowId, $email)) { 21 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 22 | exit(); 23 | } 24 | 25 | $updTime = 1; 26 | $updTime = $db->getCallLogsUpdateTime( $reg ); 27 | 28 | if ($reqTime > $updTime) { 29 | header($_SERVER["SERVER_PROTOCOL"] . " 204 No Content"); 30 | exit(); 31 | } 32 | 33 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 34 | 35 | $calllog = $db->getCallLogs($reg); 36 | 37 | $mxr = explode("}", $calllog); 38 | $paragraphs = $mxr[0]; 39 | for ($i = 1; $i < count($mxr) - 1; $i += 1) { 40 | $paragraphs .= '},' . $mxr[$i]; 41 | } 42 | if ($paragraphs != "") { 43 | $paragraphs .= '}'; 44 | } 45 | 46 | if ($paragraphs == "") { 47 | echo "[]"; 48 | } 49 | else { 50 | echo '[' . stripslashes($paragraphs) . ']'; 51 | } 52 | ?> -------------------------------------------------------------------------------- /src/fileupload.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/smsdata.php: -------------------------------------------------------------------------------- 1 | userDeviceVerify($rowId, $email)) { 22 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 23 | exit(); 24 | } 25 | 26 | $updTime = 1; 27 | $updTime = $db->getSMSUpdateTime( $reg ); 28 | 29 | if ($reqTime > $updTime) { 30 | header($_SERVER["SERVER_PROTOCOL"] . " 204 No Content"); 31 | exit(); 32 | } 33 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 34 | 35 | $smslist = $db->getSMSInbox($reg); 36 | 37 | $mxr = explode("}", $smslist); 38 | $paragraphs; 39 | for ($i = 0; $i < count($mxr) - 1; $i += 1) { 40 | $paragraphs[$i] = json_decode(stripslashes($mxr[$i]) . '}', true); 41 | } 42 | 43 | if (count($paragraphs) == 0) { 44 | echo "[]"; 45 | } 46 | else { 47 | echo json_encode($paragraphs); 48 | } 49 | ?> -------------------------------------------------------------------------------- /src/viewfilesdata.php: -------------------------------------------------------------------------------- 1 | userDeviceVerify($rowId, $email)) { 19 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 20 | exit(); 21 | } 22 | 23 | $updTime = 1; 24 | $updTime = $db->getPictureDIRUpdateTime( $reg ); 25 | 26 | if ($reqTime > $updTime) { 27 | header($_SERVER["SERVER_PROTOCOL"] . " 204 No Content"); 28 | exit(); 29 | } 30 | 31 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 32 | 33 | $picture_dirs = $db->getPictureDir($reg); 34 | 35 | $fxr = explode("}", $picture_dirs); 36 | $paragraphs = $fxr[0]; 37 | for ($i = 1; $i < count($fxr) - 1; $i += 1) { 38 | $paragraphs .= '},' . $fxr[$i]; 39 | } 40 | 41 | 42 | if ($paragraphs == "") { 43 | echo "[]"; 44 | } 45 | else { 46 | $paragraphs .= '}'; 47 | echo '[' . stripslashes($paragraphs) . ']'; 48 | } 49 | //echo $paragraphs; 50 | ?> -------------------------------------------------------------------------------- /src/contactsdata.php: -------------------------------------------------------------------------------- 1 | userDeviceVerify($rowId, $email)) { 20 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 21 | exit(); 22 | } 23 | 24 | $updTime = 1; 25 | $updTime = $db->getContactsUpdateTime($reg); 26 | 27 | error_log("rtime " . $reqTime); 28 | error_log("updTime " . $updTime); 29 | if ($reqTime > $updTime) { 30 | header($_SERVER["SERVER_PROTOCOL"] . " 204 No Content"); 31 | exit(); 32 | } 33 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 34 | 35 | $contactslist = $db->getContacts($reg); 36 | 37 | $mxr = explode("}", $contactslist); 38 | $paragraphs = $mxr[0]; 39 | for ($i = 1; $i < count($mxr) - 1; $i += 1) { 40 | $paragraphs .= '},' . $mxr[$i]; 41 | } 42 | 43 | 44 | if ($paragraphs == "") { 45 | echo "[]"; 46 | } 47 | else { 48 | $paragraphs .= '}'; 49 | echo '[' . stripslashes($paragraphs) . ']'; 50 | } 51 | 52 | ?> -------------------------------------------------------------------------------- /src/applistdata.php: -------------------------------------------------------------------------------- 1 | $1\n", $mxr[$i]); 18 | $paragraphs .= $mystr;//'

' . $mystr . '

'; 19 | } 20 | 21 | return $paragraphs; 22 | } 23 | 24 | 25 | $email = $_SESSION['email']; 26 | $reg = $_POST["registration"]; 27 | $rowId = $_POST["rowid"]; 28 | $reqTime = intval($_POST["reqtime"]); 29 | 30 | include_once './db_functions.php'; 31 | 32 | $db = new DB_Functions(); 33 | 34 | if (! $db->userDeviceVerify($rowId, $email)) { 35 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 36 | exit(); 37 | } 38 | 39 | $updTime = 1; 40 | $updTime = $db->getAppsUpdateTime($reg); 41 | 42 | error_log("rtime " . $reqTime); 43 | error_log("updTime " . $updTime); 44 | if ($reqTime > $updTime) { 45 | header($_SERVER["SERVER_PROTOCOL"] . " 204 No Content"); 46 | exit(); 47 | } 48 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 49 | 50 | $appList = $db->getInstalledApps($reg); 51 | if ($appList == "") { 52 | echo ""; 53 | exit(); 54 | } 55 | $xdata = nl2p($appList); 56 | echo $xdata; 57 | ?> -------------------------------------------------------------------------------- /lib/bootstrap-3-typeahead/.jscsrc: -------------------------------------------------------------------------------- 1 | { 2 | "disallowEmptyBlocks": true, 3 | "disallowKeywords": ["with"], 4 | "disallowMixedSpacesAndTabs": true, 5 | "disallowMultipleLineStrings": true, 6 | "disallowMultipleVarDecl": true, 7 | "disallowQuotedKeysInObjects": "allButReserved", 8 | "disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-", "~", "!"], 9 | "disallowSpaceBeforeBinaryOperators": [","], 10 | "disallowSpaceBeforePostfixUnaryOperators": ["++", "--"], 11 | "disallowSpacesInNamedFunctionExpression": { "beforeOpeningRoundBrace": true }, 12 | "disallowSpacesInsideArrayBrackets": true, 13 | "disallowSpacesInsideParentheses": true, 14 | "disallowTrailingComma": true, 15 | "disallowTrailingWhitespace": true, 16 | "requireCamelCaseOrUpperCaseIdentifiers": true, 17 | "requireCapitalizedConstructors": true, 18 | "requireCommaBeforeLineBreak": true, 19 | "requireDotNotation": true, 20 | "requireLineFeedAtFileEnd": true, 21 | "requireSpaceAfterBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!==", ">", "<", ">=", "<="], 22 | "requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch"], 23 | "requireSpaceAfterLineComment": true, 24 | "requireSpaceBeforeBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!==", ">", "<", ">=", "<="], 25 | "requireSpacesInAnonymousFunctionExpression": { "beforeOpeningCurlyBrace": true, "beforeOpeningRoundBrace": true }, 26 | "requireSpacesInConditionalExpression": true, 27 | "requireSpacesInFunctionDeclaration": { "beforeOpeningCurlyBrace": true }, 28 | "requireSpacesInFunctionExpression": { "beforeOpeningCurlyBrace": true }, 29 | "requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true }, 30 | "requireSpacesInsideObjectBrackets": "allButNested", 31 | "validateIndentation": 2, 32 | "validateLineBreaks": "LF", 33 | "validateQuoteMarks": "'" 34 | } 35 | -------------------------------------------------------------------------------- /src/browserhistorydata.php: -------------------------------------------------------------------------------- 1 | $1", $mxr[$i]); 12 | $mystr = preg_replace("/(.*)?(: )(http|ftp)(.*)/", "

$1

$3$4

", $mxr[$i]); 13 | $paragraphs .= $mystr;//'

' . $mystr . '

'; 14 | } 15 | return $paragraphs; 16 | } 17 | 18 | if (!isset($_SESSION['email']) || !isset($_POST['rowid']) || 19 | !isset($_POST['registration']) || !isset($_POST['reqtime']) || 20 | !isset($_SESSION['loggedIn'])) { 21 | header("location:index.php"); 22 | exit(); 23 | } 24 | 25 | $email = $_SESSION['email']; 26 | $reg = $_POST["registration"]; 27 | $rowId = $_POST["rowid"]; 28 | $reqTime = intval($_POST["reqtime"]); 29 | 30 | include_once './db_functions.php'; 31 | 32 | $db = new DB_Functions(); 33 | 34 | if (! $db->userDeviceVerify($rowId, $email)) { 35 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 36 | exit(); 37 | } 38 | 39 | $updTime = 1; 40 | $updTime = $db->getBrowserHistoryUpdateTime( $reg ); 41 | 42 | if ($reqTime > $updTime) { 43 | header($_SERVER["SERVER_PROTOCOL"] . " 204 No Content"); 44 | exit(); 45 | } 46 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 47 | 48 | $browserhist = $db->getBrowserHistory($reg); 49 | 50 | if ($browserhist == "") { 51 | echo ""; 52 | exit(); 53 | } 54 | 55 | ?> 56 |
57 | 58 |
-------------------------------------------------------------------------------- /GCM.php: -------------------------------------------------------------------------------- 1 | $registatoin_ids, 42 | 43 | 'data' => $message, 44 | 45 | ); 46 | 47 | 48 | 49 | $headers = array( 50 | 51 | 'Authorization: key=' . GOOGLE_API_KEY, 52 | 53 | 'Content-Type: application/json' 54 | 55 | ); 56 | 57 | // Open connection 58 | 59 | $ch = curl_init(); 60 | 61 | 62 | 63 | // Set the url, number of POST vars, POST data 64 | 65 | curl_setopt($ch, CURLOPT_URL, $url); 66 | 67 | 68 | 69 | curl_setopt($ch, CURLOPT_POST, true); 70 | 71 | curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 72 | 73 | curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 74 | 75 | 76 | 77 | // Disabling SSL Certificate support temporarly 78 | 79 | curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 80 | 81 | 82 | 83 | curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields)); 84 | 85 | 86 | 87 | // Execute post 88 | 89 | $result = curl_exec($ch); 90 | 91 | if ($result === FALSE) { 92 | 93 | die('Curl failed: ' . curl_error($ch)); 94 | 95 | } 96 | 97 | 98 | 99 | // Close connection 100 | 101 | curl_close($ch); 102 | 103 | echo $result; 104 | 105 | } 106 | 107 | 108 | 109 | } 110 | 111 | 112 | 113 | ?> 114 | 115 | -------------------------------------------------------------------------------- /lib/test.php: -------------------------------------------------------------------------------- 1 | HashPassword($correct); 21 | 22 | print 'Hash: ' . $hash . "\n"; 23 | 24 | $check = $t_hasher->CheckPassword($correct, $hash); 25 | if ($check) $ok++; 26 | print "Check correct: '" . $check . "' (should be '1')\n"; 27 | 28 | $wrong = 'test12346'; 29 | $check = $t_hasher->CheckPassword($wrong, $hash); 30 | if (!$check) $ok++; 31 | print "Check wrong: '" . $check . "' (should be '0' or '')\n"; 32 | 33 | unset($t_hasher); 34 | 35 | # Force the use of weaker portable hashes. 36 | $t_hasher = new PasswordHash(8, TRUE); 37 | 38 | $hash = $t_hasher->HashPassword($correct); 39 | 40 | print 'Hash: ' . $hash . "\n"; 41 | 42 | $check = $t_hasher->CheckPassword($correct, $hash); 43 | if ($check) $ok++; 44 | print "Check correct: '" . $check . "' (should be '1')\n"; 45 | 46 | $check = $t_hasher->CheckPassword($wrong, $hash); 47 | if (!$check) $ok++; 48 | print "Check wrong: '" . $check . "' (should be '0' or '')\n"; 49 | 50 | # A correct portable hash for 'test12345'. 51 | # Please note the use of single quotes to ensure that the dollar signs will 52 | # be interpreted literally. Of course, a real application making use of the 53 | # framework won't store password hashes within a PHP source file anyway. 54 | # We only do this for testing. 55 | $hash = '$P$9IQRaTwmfeRo7ud9Fh4E2PdI0S3r.L0'; 56 | 57 | print 'Hash: ' . $hash . "\n"; 58 | 59 | $check = $t_hasher->CheckPassword($correct, $hash); 60 | if ($check) $ok++; 61 | print "Check correct: '" . $check . "' (should be '1')\n"; 62 | 63 | $check = $t_hasher->CheckPassword($wrong, $hash); 64 | if (!$check) $ok++; 65 | print "Check wrong: '" . $check . "' (should be '0' or '')\n"; 66 | 67 | if ($ok == 6) 68 | print "All tests have PASSED\n"; 69 | else 70 | print "Some tests have FAILED\n"; 71 | 72 | ?> 73 | -------------------------------------------------------------------------------- /lib/bootstrap-sortable/Contents/bootstrap-sortable.css: -------------------------------------------------------------------------------- 1 | table.sortable span.sign { 2 | display: block; 3 | position: absolute; 4 | top: 50%; 5 | right: 5px; 6 | font-size: 12px; 7 | margin-top: -10px; 8 | color: #bfbfc1; 9 | } 10 | 11 | table.sortable th:after { 12 | display: block; 13 | position: absolute; 14 | top: 50%; 15 | right: 5px; 16 | font-size: 12px; 17 | margin-top: -10px; 18 | color: #bfbfc1; 19 | } 20 | 21 | table.sortable th.arrow:after { 22 | content: ''; 23 | } 24 | 25 | table.sortable span.arrow, span.reversed, th.arrow.down:after, th.reversedarrow.down:after, th.arrow.up:after, th.reversedarrow.up:after { 26 | border-style: solid; 27 | border-width: 5px; 28 | font-size: 0; 29 | border-color: #ccc transparent transparent transparent; 30 | line-height: 0; 31 | height: 0; 32 | width: 0; 33 | margin-top: -2px; 34 | } 35 | 36 | table.sortable span.arrow.up, th.arrow.up:after { 37 | border-color: transparent transparent #ccc transparent; 38 | margin-top: -7px; 39 | } 40 | 41 | table.sortable span.reversed, th.reversedarrow.down:after { 42 | border-color: transparent transparent #ccc transparent; 43 | margin-top: -7px; 44 | } 45 | 46 | table.sortable span.reversed.up, th.reversedarrow.up:after { 47 | border-color: #ccc transparent transparent transparent; 48 | margin-top: -2px; 49 | } 50 | 51 | table.sortable span.az:before, th.az.down:after { 52 | content: "a .. z"; 53 | } 54 | 55 | table.sortable span.az.up:before, th.az.up:after { 56 | content: "z .. a"; 57 | } 58 | 59 | table.sortable th.az.nosort:after, th.AZ.nosort:after, th._19.nosort:after, th.month.nosort:after { 60 | content: ".."; 61 | } 62 | 63 | table.sortable span.AZ:before, th.AZ.down:after { 64 | content: "A .. Z"; 65 | } 66 | 67 | table.sortable span.AZ.up:before, th.AZ.up:after { 68 | content: "Z .. A"; 69 | } 70 | 71 | table.sortable span._19:before, th._19.down:after { 72 | content: "1 .. 9"; 73 | } 74 | 75 | table.sortable span._19.up:before, th._19.up:after { 76 | content: "9 .. 1"; 77 | } 78 | 79 | table.sortable span.month:before, th.month.down:after { 80 | content: "jan .. dec"; 81 | } 82 | 83 | table.sortable span.month.up:before, th.month.up:after { 84 | content: "dec .. jan"; 85 | } 86 | 87 | table.sortable thead th:not([data-defaultsort=disabled]) { 88 | cursor: pointer; 89 | position: relative; 90 | top: 0; 91 | left: 0; 92 | } 93 | 94 | table.sortable thead th:hover:not([data-defaultsort=disabled]) { 95 | background: #efefef; 96 | } 97 | 98 | table.sortable thead th div.mozilla { 99 | position: relative; 100 | } 101 | -------------------------------------------------------------------------------- /lib/c/crypt_private.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This code exists for the sole purpose to serve as another implementation 3 | * of the "private" password hashing method implemened in PasswordHash.php 4 | * and thus to confirm that these password hashes are indeed calculated as 5 | * intended. 6 | * 7 | * Other uses of this code are discouraged. There are much better password 8 | * hashing algorithms available to C programmers; one of those is bcrypt: 9 | * 10 | * http://www.openwall.com/crypt/ 11 | * 12 | * Written by Solar Designer in 2005 and placed in 13 | * the public domain. 14 | * 15 | * There's absolutely no warranty. 16 | */ 17 | 18 | #include 19 | #include 20 | 21 | #ifdef TEST 22 | #include 23 | #endif 24 | 25 | static char *itoa64 = 26 | "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; 27 | 28 | static void encode64(char *dst, char *src, int count) 29 | { 30 | int i, value; 31 | 32 | i = 0; 33 | do { 34 | value = (unsigned char)src[i++]; 35 | *dst++ = itoa64[value & 0x3f]; 36 | if (i < count) 37 | value |= (unsigned char)src[i] << 8; 38 | *dst++ = itoa64[(value >> 6) & 0x3f]; 39 | if (i++ >= count) 40 | break; 41 | if (i < count) 42 | value |= (unsigned char)src[i] << 16; 43 | *dst++ = itoa64[(value >> 12) & 0x3f]; 44 | if (i++ >= count) 45 | break; 46 | *dst++ = itoa64[(value >> 18) & 0x3f]; 47 | } while (i < count); 48 | } 49 | 50 | char *crypt_private(char *password, char *setting) 51 | { 52 | static char output[35]; 53 | MD5_CTX ctx; 54 | char hash[MD5_DIGEST_LENGTH]; 55 | char *p, *salt; 56 | int count_log2, length, count; 57 | 58 | strcpy(output, "*0"); 59 | if (!strncmp(setting, output, 2)) 60 | output[1] = '1'; 61 | 62 | if (strncmp(setting, "$P$", 3)) 63 | return output; 64 | 65 | p = strchr(itoa64, setting[3]); 66 | if (!p) 67 | return output; 68 | count_log2 = p - itoa64; 69 | if (count_log2 < 7 || count_log2 > 30) 70 | return output; 71 | 72 | salt = setting + 4; 73 | if (strlen(salt) < 8) 74 | return output; 75 | 76 | length = strlen(password); 77 | 78 | MD5_Init(&ctx); 79 | MD5_Update(&ctx, salt, 8); 80 | MD5_Update(&ctx, password, length); 81 | MD5_Final(hash, &ctx); 82 | 83 | count = 1 << count_log2; 84 | do { 85 | MD5_Init(&ctx); 86 | MD5_Update(&ctx, hash, MD5_DIGEST_LENGTH); 87 | MD5_Update(&ctx, password, length); 88 | MD5_Final(hash, &ctx); 89 | } while (--count); 90 | 91 | memcpy(output, setting, 12); 92 | encode64(&output[12], hash, MD5_DIGEST_LENGTH); 93 | 94 | return output; 95 | } 96 | 97 | #ifdef TEST 98 | int main(int argc, char **argv) 99 | { 100 | if (argc != 3) return 1; 101 | 102 | puts(crypt_private(argv[1], argv[2])); 103 | 104 | return 0; 105 | } 106 | #endif 107 | -------------------------------------------------------------------------------- /src/locationlogdata.php: -------------------------------------------------------------------------------- 1 | userDeviceVerify($rowId, $email)) { 22 | header($_SERVER["SERVER_PROTOCOL"] . " 507 User Not Authorized for Device"); 23 | exit(); 24 | } 25 | 26 | $updTime = 1; 27 | $updTime = $db->getLocationUpdateTime($reg); 28 | 29 | //error_log("rtime " . $reqTime); 30 | //error_log("updTime " . $updTime); 31 | if ($reqTime > $updTime) { 32 | header($_SERVER["SERVER_PROTOCOL"] . " 204 No Content"); 33 | exit(); 34 | } 35 | header($_SERVER["SERVER_PROTOCOL"] . " 200 OK"); 36 | 37 | //Gets formatted list of locations 38 | $loclogs = stripslashes($db->getLocationLogs($reg)); 39 | //Splits up locations into individual locations in form "{32.111122, -84.322351}" 40 | //$locations = explode(":", $loclogs); 41 | $locations = explode(":{", $loclogs); 42 | $numberOfLocations = count($locations) - 1;//Because of the way the location log is formatted, begin at entry 1 instead of entry 0 43 | //Create an array, $rawLatLong, which is filled with latitude and longitude tuples in the form "32.111122,-84.322351" 44 | //$rawLatLong; 45 | $locationData; 46 | 47 | $nameArray = array("latitude", "longitude", "locationtime", "locationaccuracy"); 48 | //if ($numberOfLocations > 1) { 49 | for ($i = 0; $i < $numberOfLocations; $i++) { 50 | //in theory not necessary $ourTuple = str_replace('{', '', $locations[$i + 1]); //Because of the way the location log is formatted, begin at entry 1 instead of entry 0 51 | $ourTuple = str_replace('}', '', $locations[$i + 1]); 52 | $ourTuple = explode(',', $ourTuple); 53 | 54 | $currData; 55 | for ($p = 0; $p < count($ourTuple); $p++) { 56 | //error_log("assigning " . $nameArray[$p] . " to " . $ourTuple[$p]); 57 | $currData[$nameArray[$p]] = $ourTuple[$p]; 58 | } 59 | 60 | $locationData[$i] = $currData; 61 | // add most recent location to our locationlog 62 | } 63 | 64 | $locationData[$i] = $db->getLocationData($reg); 65 | if ($locationData[$i]["latitude"] == 0 && $locationData[$i]["longitude"] == 0 && 66 | $numberOfLocations == 0) { 67 | echo "{}"; 68 | 69 | } else { 70 | 71 | //$xlast = $locationData[$i]['latitude'] . ',' . $locationData[$i]['longitude']; 72 | 73 | echo json_encode($locationData); 74 | } 75 | 76 | ?> -------------------------------------------------------------------------------- /src/goodbye.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 53 | 54 | 55 | Logged Out 56 | 61 | 62 | 63 |
64 |
65 | 71 |
72 |
73 | 74 | -------------------------------------------------------------------------------- /src/updatepic.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | View Picture <?php echo $uid; ?> 13 | 14 | 62 | 63 | 114 | 115 | 116 |
117 |
Please wait as we load your picture...
118 |
119 |
120 |
Loading your picture will take 30 seconds.
121 |
122 | 123 | -------------------------------------------------------------------------------- /src/deletedevice.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | deleteDevice($rowid); 13 | $email = $_SESSION['email']; 14 | $res = $db->deleteDeviceVerify($rowid, $email); 15 | unset($_SESSION["name"]); 16 | unset($_SESSION["rowid"]); 17 | unset($_SESSION["registration"]); 18 | ?> 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 71 | 72 | 73 | Device Deleted 74 | 79 | 80 | 81 |
82 |
83 | 89 |
90 |
91 | 92 | -------------------------------------------------------------------------------- /lib/Geohash.js: -------------------------------------------------------------------------------- 1 | // geohash.js 2 | // Geohash library for Javascript 3 | // (c) 2008 David Troy 4 | // Distributed under the MIT License 5 | 6 | BITS = [16, 8, 4, 2, 1]; 7 | 8 | BASE32 = "0123456789bcdefghjkmnpqrstuvwxyz"; 9 | NEIGHBORS = { right : { even : "bc01fg45238967deuvhjyznpkmstqrwx" }, 10 | left : { even : "238967debc01fg45kmstqrwxuvhjyznp" }, 11 | top : { even : "p0r21436x8zb9dcf5h7kjnmqesgutwvy" }, 12 | bottom : { even : "14365h7k9dcfesgujnmqp0r2twvyx8zb" } }; 13 | BORDERS = { right : { even : "bcfguvyz" }, 14 | left : { even : "0145hjnp" }, 15 | top : { even : "prxz" }, 16 | bottom : { even : "028b" } }; 17 | 18 | NEIGHBORS.bottom.odd = NEIGHBORS.left.even; 19 | NEIGHBORS.top.odd = NEIGHBORS.right.even; 20 | NEIGHBORS.left.odd = NEIGHBORS.bottom.even; 21 | NEIGHBORS.right.odd = NEIGHBORS.top.even; 22 | 23 | BORDERS.bottom.odd = BORDERS.left.even; 24 | BORDERS.top.odd = BORDERS.right.even; 25 | BORDERS.left.odd = BORDERS.bottom.even; 26 | BORDERS.right.odd = BORDERS.top.even; 27 | 28 | function refine_interval(interval, cd, mask) { 29 | if (cd&mask) 30 | interval[0] = (interval[0] + interval[1])/2; 31 | else 32 | interval[1] = (interval[0] + interval[1])/2; 33 | } 34 | 35 | function calculateAdjacent(srcHash, dir) { 36 | srcHash = srcHash.toLowerCase(); 37 | var lastChr = srcHash.charAt(srcHash.length-1); 38 | var type = (srcHash.length % 2) ? 'odd' : 'even'; 39 | var base = srcHash.substring(0,srcHash.length-1); 40 | if (BORDERS[dir][type].indexOf(lastChr)!=-1) 41 | base = calculateAdjacent(base, dir); 42 | return base + BASE32[NEIGHBORS[dir][type].indexOf(lastChr)]; 43 | } 44 | 45 | function decodeGeoHash(geohash) { 46 | var is_even = 1; 47 | var lat = []; var lon = []; 48 | lat[0] = -90.0; lat[1] = 90.0; 49 | lon[0] = -180.0; lon[1] = 180.0; 50 | lat_err = 90.0; lon_err = 180.0; 51 | 52 | for (i=0; i mid) { 89 | ch |= BITS[bit]; 90 | lon[0] = mid; 91 | } else 92 | lon[1] = mid; 93 | } else { 94 | mid = (lat[0] + lat[1]) / 2; 95 | if (latitude > mid) { 96 | ch |= BITS[bit]; 97 | lat[0] = mid; 98 | } else 99 | lat[1] = mid; 100 | } 101 | 102 | is_even = !is_even; 103 | if (bit < 4) 104 | bit++; 105 | else { 106 | geohash += BASE32[ch]; 107 | bit = 0; 108 | ch = 0; 109 | } 110 | } 111 | return geohash; 112 | } -------------------------------------------------------------------------------- /lib/js_crookies.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * JavaScript Cookie v2.0.3 3 | * https://github.com/js-cookie/js-cookie 4 | * 5 | * Copyright 2006, 2015 Klaus Hartl & Fagner Brack 6 | * Released under the MIT license 7 | */ 8 | (function (factory) { 9 | if (typeof define === 'function' && define.amd) { 10 | define(factory); 11 | } else if (typeof exports === 'object') { 12 | module.exports = factory(); 13 | } else { 14 | var _OldCookies = window.Cookies; 15 | var api = window.Cookies = factory(window.jQuery); 16 | api.noConflict = function () { 17 | window.Cookies = _OldCookies; 18 | return api; 19 | }; 20 | } 21 | }(function () { 22 | function extend () { 23 | var i = 0; 24 | var result = {}; 25 | for (; i < arguments.length; i++) { 26 | var attributes = arguments[ i ]; 27 | for (var key in attributes) { 28 | result[key] = attributes[key]; 29 | } 30 | } 31 | return result; 32 | } 33 | 34 | function init (converter) { 35 | function api (key, value, attributes) { 36 | var result; 37 | 38 | // Write 39 | 40 | if (arguments.length > 1) { 41 | attributes = extend({ 42 | path: '/' 43 | }, api.defaults, attributes); 44 | 45 | if (typeof attributes.expires === 'number') { 46 | var expires = new Date(); 47 | expires.setMilliseconds(expires.getMilliseconds() + attributes.expires * 864e+5); 48 | attributes.expires = expires; 49 | } 50 | 51 | try { 52 | result = JSON.stringify(value); 53 | if (/^[\{\[]/.test(result)) { 54 | value = result; 55 | } 56 | } catch (e) {} 57 | 58 | value = encodeURIComponent(String(value)); 59 | value = value.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent); 60 | 61 | key = encodeURIComponent(String(key)); 62 | key = key.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent); 63 | key = key.replace(/[\(\)]/g, escape); 64 | 65 | return (document.cookie = [ 66 | key, '=', value, 67 | attributes.expires && '; expires=' + attributes.expires.toUTCString(), // use expires attribute, max-age is not supported by IE 68 | attributes.path && '; path=' + attributes.path, 69 | attributes.domain && '; domain=' + attributes.domain, 70 | attributes.secure ? '; secure' : '' 71 | ].join('')); 72 | } 73 | 74 | // Read 75 | 76 | if (!key) { 77 | result = {}; 78 | } 79 | 80 | // To prevent the for loop in the first place assign an empty array 81 | // in case there are no cookies at all. Also prevents odd result when 82 | // calling "get()" 83 | var cookies = document.cookie ? document.cookie.split('; ') : []; 84 | var rdecode = /(%[0-9A-Z]{2})+/g; 85 | var i = 0; 86 | 87 | for (; i < cookies.length; i++) { 88 | var parts = cookies[i].split('='); 89 | var name = parts[0].replace(rdecode, decodeURIComponent); 90 | var cookie = parts.slice(1).join('='); 91 | 92 | if (cookie.charAt(0) === '"') { 93 | cookie = cookie.slice(1, -1); 94 | } 95 | 96 | try { 97 | cookie = converter && converter(cookie, name) || cookie.replace(rdecode, decodeURIComponent); 98 | 99 | if (this.json) { 100 | try { 101 | cookie = JSON.parse(cookie); 102 | } catch (e) {} 103 | } 104 | 105 | if (key === name) { 106 | result = cookie; 107 | break; 108 | } 109 | 110 | if (!key) { 111 | result[name] = cookie; 112 | } 113 | } catch (e) {} 114 | } 115 | 116 | return result; 117 | } 118 | 119 | api.get = api.set = api; 120 | api.getJSON = function () { 121 | return api.apply({ 122 | json: true 123 | }, [].slice.call(arguments)); 124 | }; 125 | api.defaults = {}; 126 | 127 | api.remove = function (key, attributes) { 128 | api(key, '', extend(attributes, { 129 | expires: -1 130 | })); 131 | }; 132 | 133 | api.withConverter = init; 134 | 135 | return api; 136 | } 137 | 138 | return init(); 139 | })); 140 | -------------------------------------------------------------------------------- /src/command.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Command Line 10 | 11 | 12 | 36 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | Home 55 | 56 | 68 | 69 |
70 |
71 | 72 | 73 | 74 | 75 |

Command Directory: 76 |
77 | contacts - Update contacts command. 78 |
79 | readsms - Update SMS Inbox. 80 |
81 | readsmsout - Update SMS Outbox. 82 |
83 | calls - Update Call Logs. 84 |
85 | location - Update Location. 86 |
87 | flashon - Flashlight on. 88 |
89 | flashoff - Flashlight off. 90 |
91 | setvolumering - Set ringer volume to ring. 92 |
93 | setvolumevibrate - Set ringer volume to vibrate. 94 |
95 | setvolumesilent - Set ringer volume to silent. 96 |
97 | vup - Volume up. 98 |
99 | vdown - Volume down. 100 |
101 | sendsms(phonenumber, textmessage) - Send SMS Message ex. "sendsms(5817381739, Hi!)" 102 |
103 | call(phonenumber) - Initiates a call. ex. "call(5817381739)" 104 |
105 | play(url) - Plays a sound from the internet in the background on the device ex. "play(http://www.web.com/sound.mp3)" 106 |
107 | open(url) - Open a webpage on the device ex. "open(www.google.com)" 108 |
109 | sedn(notification) - Send a notification to the device ex. "sedn(Be home at 7pm!)" 110 |
111 |

112 | 113 | 114 | 115 | -------------------------------------------------------------------------------- /lib/bootstrap-sortable/README.md: -------------------------------------------------------------------------------- 1 | bootstrap-sortable 2 | ================== 3 | adding sorting ability to bootstrap table 4 | Current version: 1.11.2 5 | 6 | In fact, it can be used for any tables. 7 | 8 | Sorting provided by [TinySort](https://github.com/Sjeiti/TinySort). 9 | Date parsing provided by [moment.js](https://github.com/timrwood/moment/). 10 | 11 | Available for download with NuGet, search for `bootstrap-sortable`. 12 | Working [demo](http://drvic10k.github.io/bootstrap-sortable/). 13 | 14 | For compatibility issues with older browsers and possible workarounds, please look into the [issues list](https://github.com/drvic10k/bootstrap-sortable/issues?labels=compatibility&page=1&state=closed). 15 | 16 | ####Dependencies: 17 | You should add the provided "moment.js" library, or get yourself a copy from http://momentjs.com. 18 | 19 | ####Basic usage: 20 | 21 | Add references to bootstrap-sortable.css and bootstrap-sortable.js to your page. Add class "sortable" to your bootstrap table. 22 | HTML table has to be properly formated, using ``, `` and `` elements. 23 | 24 | You can disable sorting for a column by using `data-defaultsort='disabled'` attribute in the `` element. 25 | 26 | When you add table rows or whole table from client side, use `$.bootstrapSortable(applyLast)` function to add sortability to parts/tables that were not present at document.ready. 27 | Use optional paramater `applyLast=true` if you want to preserve the last used sorting. 28 | 29 | After sorting a column, the table triggers an event `sorted`. 30 | 31 | ####Cell with `colspan` and multiple header rows: 32 | When you have multiple header rows, all header cells in the same column can be used to sort that column. 33 | 34 | Cells with `colspan` can also be used for sorting. When not specified, the first column of the colspan will be used for sorting. You can override this by using `data-mainsort` attribute. (Use zero-based index as the value, `data-mainsort='1'` will sort the second column of the span.) 35 | 36 | If this cell is in the last row of the header, the sorting will be done according to this cell. If there is another row below, the cell in this row will be used. (i.e. the sorting sign, default-sort setting...) 37 | 38 | #####!BREAKING CHANGE! 39 | This changes the previous behaviour, where it only worked if the `colspan` cell was not in the last row and the `mainsort` had to be set on the cell in the next row. Now the `mainsort` is set on the `colspan` cell. 40 | 41 | ####Sorting direction signs: 42 | You can choose the sign that show the sort direcion. Default is the arrow pointing towards the heigher value. 43 | 44 | This proved to be contra-intuitive for some, so you can change it to opposite using the second parameter: `$.bootstrapSortable(applyLast, 'reversed')`. 45 | 46 | Other possible values are `'az'`, `'AZ'`, `'_19'`, `'month'`. (See [demo](http://htmlpreview.github.io/?https://github.com/drvic10k/bootstrap-sortable/blob/gh-pages/index.html) to see how it looks.) 47 | 48 | You can set individual signs for each column using `data-defaultsign` attribute in the `` element. 49 | 50 | #####Alternative way of styling the sorting signs: 51 | Set `data-defaultsign='nospan'` and set a `class` on `` elements. Then the sorting signs will be shown using `:after` pseudoelement on ``. This can be seen on the first column in the demo page. 52 | For this purpose, sorted column headers have classes `up`, `down` and `nosort` respectively and all previous styles are supported. 53 | You can also do your own styling in `css`. 54 | 55 | ####Optional attributes: 56 | 57 | You can preset one column to be sorted when table is loaded using `data-defaultsort` attribute: 58 | ```html 59 | Column 1 60 | Column 2 61 | Column 3 62 | ``` 63 | 64 | To change the initial direction when sorting a column for the first time, use the `data-firstsort` attribute: 65 | ```html 66 | Column 1 67 | Column 2 68 | Column 3 69 | ``` 70 | 71 | You can change the value that is used for sorting for each `` using `data-value` attribute: 72 | ```html 73 | 5,45 74 | ``` 75 | 76 | You can sort dates, even if they are in different formats. Specify date formats according to moment.js documentation. This only works if you include any version of Moment.js. If Moment.js is not found it will fallback to the usual sorting. 77 | ```html 78 | 2013-06-24 79 | 26 June 2013 80 | ``` 81 | -------------------------------------------------------------------------------- /access.php: -------------------------------------------------------------------------------- 1 | accountExists($_SESSION['email'], $_SESSION['password']); 61 | } 62 | else if (!isset($_POST['action'])) { 63 | return verifyKMLI(); 64 | } 65 | } 66 | 67 | function logUserIn($user, $hashedPassword) { 68 | $_SESSION['loggedIn'] = TRUE; 69 | $_SESSION['email'] = $user; 70 | $_SESSION['password'] = $hashedPassword; 71 | } 72 | 73 | function generateRandomBase62String($length) 74 | { 75 | if (!defined('MCRYPT_DEV_URANDOM')) die('The MCRYPT_DEV_URANDOM source is required (PHP 5.3).'); 76 | $result = ''; 77 | $remainingLength = $length; 78 | do 79 | { 80 | // We take advantage of the fast base64 encoding 81 | $binaryLength = (int)($remainingLength * 3 / 4 + 1); 82 | $binaryString = mcrypt_create_iv($binaryLength, MCRYPT_DEV_URANDOM); 83 | $base64String = base64_encode($binaryString); 84 | 85 | // Remove invalid characters 86 | $base62String = str_replace(array('+', '/', '='), '', $base64String); 87 | $result .= $base62String; 88 | 89 | // If too many characters have been removed, we repeat the procedure 90 | $remainingLength = $length - strlen($result); 91 | } while ($remainingLength > 0); 92 | return substr($result, 0, $length); 93 | } 94 | 95 | function keepMeLoggedIn($user) { 96 | global $db; 97 | $kmli = generateRandomBase62String(128); 98 | $db->setKMLIToken($user, $kmli); 99 | 100 | $cookie = $user . ':' . $kmli; 101 | $mac = hash_hmac('sha256', $cookie, SECRET_KEY); 102 | $cookie .= ':' . $mac; 103 | setcookie('rememberme', $cookie, time()+(1814400), "/", "www.monitordroid.com", true); // cookie should be good for three weeks 104 | return; 105 | } 106 | 107 | /** 108 | * A timing safe equals comparison 109 | * 110 | * To prevent leaking length information, it is important 111 | * that user input is always used as the second parameter. 112 | * 113 | * @param string $safe The internal (safe) value to be checked 114 | * @param string $user The user submitted (unsafe) value 115 | * 116 | * @return boolean True if the two strings are identical. 117 | */ 118 | function timingSafeCompare($safe, $user) { 119 | // Prevent issues if string length is 0 120 | $safe .= chr(0); 121 | $user .= chr(0); 122 | 123 | $safeLen = strlen($safe); 124 | $userLen = strlen($user); 125 | 126 | // Set the result to the difference between the lengths 127 | $result = $safeLen - $userLen; 128 | 129 | // Note that we ALWAYS iterate over the user-supplied length 130 | // This is to prevent leaking length information 131 | for ($i = 0; $i < $userLen; $i++) { 132 | // Using % here is a trick to prevent notices 133 | // It's safe, since if the lengths are different 134 | // $result is already non-0 135 | $result |= (ord($safe[$i % $safeLen]) ^ ord($user[$i])); 136 | } 137 | 138 | // They are only identical strings if $result is exactly 0... 139 | return $result === 0; 140 | } 141 | 142 | function verifyKMLI() { 143 | global $db; 144 | $cookie = isset($_COOKIE['rememberme']) ? $_COOKIE['rememberme'] : ''; 145 | if ($cookie) { 146 | list ($user, $token, $mac) = explode(':', $cookie); 147 | $usertoken = $db->getKMLIToken($user); 148 | if (timingSafeCompare($usertoken, $token)) { 149 | $hashedPassword = $db->getPasswordByEmail($user); 150 | logUserIn($user, $hashedPassword); 151 | if (isset($_POST["hash"]) && $_POST["hash"] != "") { 152 | header("Location: ./#" . $_POST["hash"]); 153 | } 154 | else { 155 | header("Location: ./"); 156 | } 157 | return TRUE; 158 | } 159 | } 160 | return FALSE; 161 | } 162 | 163 | function databaseVerifyAccount($email, $upassword) 164 | { 165 | global $db; 166 | 167 | if (strlen($upassword) > 72) { die("Password must be 72 characters or less"); } 168 | 169 | if (!($db->accountEmailExists($email))) { 170 | return FALSE; 171 | } 172 | 173 | require_once("./lib/PasswordHash.php"); 174 | $hasher = new PasswordHash(8, false); 175 | 176 | // Just in case the hash isn't found 177 | $hashedPassword = "*"; 178 | 179 | $hashedPassword = $db->getPasswordByEmail($email); 180 | 181 | // Check that the password is correct, returns a boolean 182 | $check = $hasher->CheckPassword($upassword, $hashedPassword); 183 | 184 | return array($check, $hashedPassword); 185 | 186 | } 187 | -------------------------------------------------------------------------------- /src/passwordchange.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 55 | 56 | Change Password 57 | 58 | 59 |
60 |
61 | 75 | 83 | 88 | 96 | changePassword($_SESSION['email'], $hashedPassword); 104 | ?> 105 | 111 | 116 | 120 | 127 | getPasswordByEmail($email); 139 | // Check that the password is correct, returns a boolean 140 | $check = $hasher->CheckPassword($upassword, $hashedPassword); 141 | return $check; 142 | } 143 | function getPasswordHash($upassword) 144 | { 145 | if (strlen($upassword) > 72) { die("Password must be 72 characters or less"); } 146 | $db = new DB_Functions(); 147 | require_once("./lib/PasswordHash.php"); 148 | $hasher = new PasswordHash(8, false); 149 | $hashedPassword = $hasher->HashPassword($upassword); 150 | if (strlen($hashedPassword) < 20) { 151 | error_log("Critical error could not hash password", "accounts_log.log"); 152 | exit(); 153 | } 154 | return $hashedPassword; 155 | } 156 | ?> 157 |
158 |
159 | 160 | -------------------------------------------------------------------------------- /lib/bootstrap-3-typeahead/bootstrap3-typeahead.min.js: -------------------------------------------------------------------------------- 1 | !function(a,b){"use strict";"undefined"!=typeof module&&module.exports?module.exports=b(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):b(a.jQuery)}(this,function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.typeahead.defaults,c),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.select=this.options.select||this.select,this.autoSelect="boolean"==typeof this.options.autoSelect?this.options.autoSelect:!0,this.highlighter=this.options.highlighter||this.highlighter,this.render=this.options.render||this.render,this.updater=this.options.updater||this.updater,this.displayText=this.options.displayText||this.displayText,this.source=this.options.source,this.delay=this.options.delay,this.$menu=a(this.options.menu),this.$appendTo=this.options.appendTo?a(this.options.appendTo):null,this.shown=!1,this.listen(),this.showHintOnFocus="boolean"==typeof this.options.showHintOnFocus?this.options.showHintOnFocus:!1,this.afterSelect=this.options.afterSelect,this.addItem=!1};b.prototype={constructor:b,select:function(){var a=this.$menu.find(".active").data("value");if(this.$element.data("active",a),this.autoSelect||a){var b=this.updater(a);this.$element.val(this.displayText(b)||b).change(),this.afterSelect(b)}return this.hide()},updater:function(a){return a},setSource:function(a){this.source=a},show:function(){var b,c=a.extend({},this.$element.position(),{height:this.$element[0].offsetHeight});return b="function"==typeof this.options.scrollHeight?this.options.scrollHeight.call():this.options.scrollHeight,(this.$appendTo?this.$menu.appendTo(this.$appendTo):this.$menu.insertAfter(this.$element)).css({top:c.top+c.height+b,left:c.left}).show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(b){if(this.query="undefined"!=typeof b&&null!==b?b:this.$element.val()||"",this.query.length0?this.$element.data("active",b[0]):this.$element.data("active",null),this.options.addItem&&b.push(this.options.addItem),"all"==this.options.items?this.render(b).show():this.render(b.slice(0,this.options.items)).show()):this.shown?this.hide():this},matcher:function(a){var b=this.displayText(a);return~b.toLowerCase().indexOf(this.query.toLowerCase())},sorter:function(a){for(var b,c=[],d=[],e=[];b=a.shift();){var f=this.displayText(b);f.toLowerCase().indexOf(this.query.toLowerCase())?~f.indexOf(this.query)?d.push(b):e.push(b):c.push(b)}return c.concat(d,e)},highlighter:function(b){var c,d,e,f,g,h=a("
"),i=this.query,j=b.toLowerCase().indexOf(i.toLowerCase());if(c=i.length,0===c)return h.text(b).html();for(;j>-1;)d=b.substr(0,j),e=b.substr(j,c),f=b.substr(j+c),g=a("").text(e),h.append(document.createTextNode(d)).append(g),b=f,j=b.toLowerCase().indexOf(i.toLowerCase());return h.append(document.createTextNode(b)).html()},render:function(b){var c=this,d=this,e=!1;return b=a(b).map(function(b,f){var g=d.displayText(f);return b=a(c.options.item).data("value",f),b.find("a").html(c.highlighter(g)),g==d.$element.val()&&(b.addClass("active"),d.$element.data("active",f),e=!0),b[0]}),this.autoSelect&&!e&&(b.first().addClass("active"),this.$element.data("active",b.first().data("value"))),this.$menu.html(b),this},displayText:function(a){return a.name||a},next:function(b){var c=this.$menu.find(".active").removeClass("active"),d=c.next();d.length||(d=a(this.$menu.find("li")[0])),d.addClass("active")},prev:function(a){var b=this.$menu.find(".active").removeClass("active"),c=b.prev();c.length||(c=this.$menu.find("li").last()),c.addClass("active")},listen:function(){this.$element.on("focus",a.proxy(this.focus,this)).on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this)),this.eventSupported("keydown")&&this.$element.on("keydown",a.proxy(this.keydown,this)),this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this)).on("mouseleave","li",a.proxy(this.mouseleave,this))},destroy:function(){this.$element.data("typeahead",null),this.$element.data("active",null),this.$element.off("focus").off("blur").off("keypress").off("keyup"),this.eventSupported("keydown")&&this.$element.off("keydown"),this.$menu.remove()},eventSupported:function(a){var b=a in this.$element;return b||(this.$element.setAttribute(a,"return;"),b="function"==typeof this.$element[a]),b},move:function(a){if(this.shown){switch(a.keyCode){case 9:case 13:case 27:a.preventDefault();break;case 38:if(a.shiftKey)return;a.preventDefault(),this.prev();break;case 40:if(a.shiftKey)return;a.preventDefault(),this.next()}a.stopPropagation()}},keydown:function(b){this.suppressKeyPressRepeat=~a.inArray(b.keyCode,[40,38,9,13,27]),this.shown||40!=b.keyCode?this.move(b):this.lookup()},keypress:function(a){this.suppressKeyPressRepeat||this.move(a)},keyup:function(a){switch(a.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:if(!this.shown)return;this.hide();break;default:this.lookup()}a.stopPropagation(),a.preventDefault()},focus:function(a){this.focused||(this.focused=!0,this.options.showHintOnFocus&&this.lookup(""))},blur:function(a){this.focused=!1,!this.mousedover&&this.shown&&this.hide()},click:function(a){a.stopPropagation(),a.preventDefault(),this.select(),this.$element.focus()},mouseenter:function(b){this.mousedover=!0,this.$menu.find(".active").removeClass("active"),a(b.currentTarget).addClass("active")},mouseleave:function(a){this.mousedover=!1,!this.focused&&this.shown&&this.hide()}};var c=a.fn.typeahead;a.fn.typeahead=function(c){var d=arguments;return"string"==typeof c&&"getActive"==c?this.data("active"):this.each(function(){var e=a(this),f=e.data("typeahead"),g="object"==typeof c&&c;f||e.data("typeahead",f=new b(this,g)),"string"==typeof c&&(d.length>1?f[c].apply(f,Array.prototype.slice.call(d,1)):f[c]())})},a.fn.typeahead.defaults={source:[],items:8,menu:'',item:'
  • ',minLength:1,scrollHeight:0,autoSelect:!0,afterSelect:a.noop,addItem:!1,delay:0},a.fn.typeahead.Constructor=b,a.fn.typeahead.noConflict=function(){return a.fn.typeahead=c,this},a(document).on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(b){var c=a(this);c.data("typeahead")||c.typeahead(c.data())})}); -------------------------------------------------------------------------------- /src/phone_contactsmode.js: -------------------------------------------------------------------------------- 1 | // Helper functions for SMS Send and Phone Call modules 2 | var contactsModeInitialized; 3 | var promise; 4 | $( document ).ready(function() { 5 | contactsModeInitialized = false; 6 | promise = null; 7 | }) 8 | 9 | jQuery.fn.getEvents = function() { 10 | if (typeof(jQuery._data) == 'function') { 11 | return jQuery._data(this.get(0), 'events') || {}; 12 | } else if (typeof(this.data) == 'function') { // jQuery version < 1.7.? 13 | return this.data('events') || {}; 14 | } 15 | return {}; 16 | }; 17 | jQuery.fn.preBind = function(type, data, fn) { 18 | this.each(function () { 19 | var $this = jQuery(this); 20 | 21 | $this.bind(type, data, fn); 22 | 23 | var currentBindings = $this.getEvents()[type]; 24 | if (jQuery.isArray(currentBindings)) { 25 | currentBindings.unshift(currentBindings.pop()); 26 | } 27 | }); 28 | return this; 29 | }; 30 | var disableContactsMode = function(form) { 31 | // form is the parent form (ie #sms-form or #call-form) 32 | //form.find(".address-book-btn").css("margin-top","-4px"); 33 | //xx// form.find(".address-book-btn").css("left","-8px"); 34 | //form.find(".address-book-btn").css("margin-bottom", "0"); 35 | //form.find(".phone-num").attr("placeholder", ""); 36 | form.find(".address-book-entry td").unbind('click'); 37 | //form.find(".address-book-btn").popover("hide"); 38 | //form.find('label:contains(Contact Name)').text("Phone Number"); 39 | //var phoneEl = form.find(".phone-num"); 40 | // phoneEl.intlTelInput({ 41 | // utilsScript: "./lib/intl-tel-input/js/utils.js", 42 | // autoPlaceholder: true, 43 | // nationalMode: true, 44 | // autoFormat: true 45 | // }); 46 | // phoneEl.intlTelInput("loadUtils", "./lib/intl-tel-input/js/utils.js"); 47 | }; 48 | var enableContactsMode = function(form) { 49 | // form is the parent form (ie #sms-form or #call-form) 50 | //form.find(".address-book-btn").css("margin-top", "0"); 51 | //form.find(".address-book-btn").css("left","0"); 52 | //form.find(".address-book-btn").css("margin-bottom", "5px"); 53 | //var phoneEl = form.find(".phone-num"); 54 | //phoneEl.css("width","232px"); 55 | //form.find(".phone-num").focus(); 56 | //setTimeout(function (){ 57 | // phoneEl.focus(); 58 | //}, 0); 59 | 60 | //form.find('label:contains(Phone Number)').text("Contact Name"); 61 | 62 | //phoneEl.intlTelInput("destroy"); 63 | //form.find(".phone-num").attr("placeholder", "John Smith"); 64 | // form.find(".phone-num").typeahead({ 65 | // source: contacts_data, 66 | // displayText: function(data) { 67 | // return data.name; 68 | // }, 69 | // afterSelect: function(data) { 70 | // disableContactsMode(form); 71 | // phoneEl.intlTelInput("setNumber", (data.phonenumber)); 72 | // contactsModeActive = false; 73 | // } 74 | // }); 75 | console.log("enable contact mode"); 76 | var addressBookSetNumber = function() { 77 | //console.log($(this).text()); 78 | console.log("address book set number"); 79 | disableContactsMode(form); 80 | var phoneEl = form.find(".phone-num"); 81 | phoneEl.intlTelInput("setNumber", ($(this).parent().children("td:nth-child(1)").text())); 82 | form.find(".address-book-btn").popover('hide'); 83 | //contactsModeActive = false; 84 | }; 85 | 86 | form.find(".address-book-entry td").click(addressBookSetNumber); 87 | }; 88 | var contactsJSONData = null; 89 | var initializeContactsMode = function(modal, form) { 90 | var phoneEl = form.find(".phone-num"); 91 | 92 | modal.on('hidden.bs.modal', function (e) { 93 | form.find(".address-book-btn").popover("hide"); 94 | modal.find("button[type=submit]").popover("hide"); 95 | }); 96 | phoneEl.intlTelInput({ 97 | utilsScript: "./lib/intl-tel-input/js/utils.js", 98 | autoPlaceholder: true, 99 | nationalMode: true, 100 | autoFormat: true 101 | }); 102 | phoneEl.intlTelInput("loadUtils", "./lib/intl-tel-input/js/utils.js"); 103 | phoneEl.preBind("keypress", function(e){ 104 | if (e.which < 48 || e.which > 57) { 105 | e.stopImmediatePropagation(); 106 | return true; 107 | } 108 | }); 109 | 110 | var addressBook = '
    '; 111 | var contactsXHRCallback = function(JSON){ 112 | if (contactsJSONData == null) { 113 | contactsJSONData = JSON; 114 | } 115 | contactsModeInitialized = true; 116 | 117 | contacts_data = jQuery.parseJSON( JSON ); 118 | for ( var i = 0; i < contacts_data.length; i++ ) { 119 | addressBook += '"; 120 | } 121 | addressBook += "
    Phone NumberName
    ' + contacts_data[i].phonenumber + "" + contacts_data[i].name + "
    "; 122 | form.find(".address-book-btn").popover( 123 | { 124 | //container: "body", 125 | html : true, 126 | content: addressBook, 127 | title: "Address Book", 128 | placement: "right", 129 | trigger: "click" 130 | } 131 | ).on('shown.bs.popover', function () { 132 | enableContactsMode(form); 133 | }).on('hidden.bs.modal', function () { 134 | disableContactsMode(form); 135 | }); 136 | 137 | 138 | //contactsModeActive = true; 139 | /*form.find(".address-book-btn").click(function(){ 140 | if (contactsModeActive) { 141 | contactsModeActive = false; 142 | disableContactsMode(form); 143 | } 144 | else { 145 | contactsModeActive = true; 146 | enableContactsMode(form); 147 | } 148 | });*/ 149 | 150 | 151 | phoneEl.typeahead({ 152 | source: contacts_data, 153 | displayText: function(data) { 154 | return data.name; 155 | }, 156 | afterSelect: function(data) { 157 | disableContactsMode(form); 158 | phoneEl.intlTelInput("setNumber", (data.phonenumber)); 159 | contactsModeActive = false; 160 | } 161 | }); 162 | }; 163 | 164 | if (promise != null) { 165 | promise.done(function () { 166 | contactsXHRCallback(contactsJSONData); 167 | }); 168 | } 169 | else { 170 | var xhr = $.ajax({ 171 | url: "contactsdata_np.php", 172 | type: "POST", 173 | data: { 174 | //These are the variables and their relative values 175 | registration: "", 176 | rowid: "" 177 | } 178 | }); 179 | promise = xhr; 180 | xhr.done(contactsXHRCallback); 181 | } 182 | 183 | }; 184 | // END helper functions 185 | -------------------------------------------------------------------------------- /src/deletedeviceverify.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | deleteDeviceVerify($rowid, $email); 14 | unset($_SESSION["name"]); 15 | unset($_SESSION["rowid"]); 16 | unset($_SESSION["registration"]); 17 | 18 | if ($res) { 19 | ?> 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 72 | 73 | 74 | Device Deleted 75 | 80 | 81 | 82 |
    83 |
    84 | 90 |
    91 |
    92 | 93 | 94 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 148 | 149 | 150 | Device Deleted 151 | 156 | 157 | 158 |
    159 |
    160 | 166 |
    167 |
    168 | 169 | 170 | 171 | in 2004-2006 and placed in 8 | # the public domain. Revised in subsequent years, still public domain. 9 | # 10 | # There's absolutely no warranty. 11 | # 12 | # The homepage URL for this framework is: 13 | # 14 | # http://www.openwall.com/phpass/ 15 | # 16 | # Please be sure to update the Version line if you edit this file in any way. 17 | # It is suggested that you leave the main version number intact, but indicate 18 | # your project name (after the slash) and add your own revision information. 19 | # 20 | # Please do not change the "private" password hashing method implemented in 21 | # here, thereby making your hashes incompatible. However, if you must, please 22 | # change the hash type identifier (the "$P$") to something different. 23 | # 24 | # Obviously, since this code is in the public domain, the above are not 25 | # requirements (there can be none), but merely suggestions. 26 | # 27 | class PasswordHash { 28 | var $itoa64; 29 | var $iteration_count_log2; 30 | var $portable_hashes; 31 | var $random_state; 32 | 33 | function PasswordHash($iteration_count_log2, $portable_hashes) 34 | { 35 | $this->itoa64 = './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; 36 | 37 | if ($iteration_count_log2 < 4 || $iteration_count_log2 > 31) 38 | $iteration_count_log2 = 8; 39 | $this->iteration_count_log2 = $iteration_count_log2; 40 | 41 | $this->portable_hashes = $portable_hashes; 42 | 43 | $this->random_state = microtime(); 44 | if (function_exists('getmypid')) 45 | $this->random_state .= getmypid(); 46 | } 47 | 48 | function get_random_bytes($count) 49 | { 50 | $output = ''; 51 | if (is_readable('/dev/urandom') && 52 | ($fh = @fopen('/dev/urandom', 'rb'))) { 53 | $output = fread($fh, $count); 54 | fclose($fh); 55 | } 56 | 57 | if (strlen($output) < $count) { 58 | $output = ''; 59 | for ($i = 0; $i < $count; $i += 16) { 60 | $this->random_state = 61 | md5(microtime() . $this->random_state); 62 | $output .= 63 | pack('H*', md5($this->random_state)); 64 | } 65 | $output = substr($output, 0, $count); 66 | } 67 | 68 | return $output; 69 | } 70 | 71 | function encode64($input, $count) 72 | { 73 | $output = ''; 74 | $i = 0; 75 | do { 76 | $value = ord($input[$i++]); 77 | $output .= $this->itoa64[$value & 0x3f]; 78 | if ($i < $count) 79 | $value |= ord($input[$i]) << 8; 80 | $output .= $this->itoa64[($value >> 6) & 0x3f]; 81 | if ($i++ >= $count) 82 | break; 83 | if ($i < $count) 84 | $value |= ord($input[$i]) << 16; 85 | $output .= $this->itoa64[($value >> 12) & 0x3f]; 86 | if ($i++ >= $count) 87 | break; 88 | $output .= $this->itoa64[($value >> 18) & 0x3f]; 89 | } while ($i < $count); 90 | 91 | return $output; 92 | } 93 | 94 | function gensalt_private($input) 95 | { 96 | $output = '$P$'; 97 | $output .= $this->itoa64[min($this->iteration_count_log2 + 98 | ((PHP_VERSION >= '5') ? 5 : 3), 30)]; 99 | $output .= $this->encode64($input, 6); 100 | 101 | return $output; 102 | } 103 | 104 | function crypt_private($password, $setting) 105 | { 106 | $output = '*0'; 107 | if (substr($setting, 0, 2) == $output) 108 | $output = '*1'; 109 | 110 | $id = substr($setting, 0, 3); 111 | # We use "$P$", phpBB3 uses "$H$" for the same thing 112 | if ($id != '$P$' && $id != '$H$') 113 | return $output; 114 | 115 | $count_log2 = strpos($this->itoa64, $setting[3]); 116 | if ($count_log2 < 7 || $count_log2 > 30) 117 | return $output; 118 | 119 | $count = 1 << $count_log2; 120 | 121 | $salt = substr($setting, 4, 8); 122 | if (strlen($salt) != 8) 123 | return $output; 124 | 125 | # We're kind of forced to use MD5 here since it's the only 126 | # cryptographic primitive available in all versions of PHP 127 | # currently in use. To implement our own low-level crypto 128 | # in PHP would result in much worse performance and 129 | # consequently in lower iteration counts and hashes that are 130 | # quicker to crack (by non-PHP code). 131 | if (PHP_VERSION >= '5') { 132 | $hash = md5($salt . $password, TRUE); 133 | do { 134 | $hash = md5($hash . $password, TRUE); 135 | } while (--$count); 136 | } else { 137 | $hash = pack('H*', md5($salt . $password)); 138 | do { 139 | $hash = pack('H*', md5($hash . $password)); 140 | } while (--$count); 141 | } 142 | 143 | $output = substr($setting, 0, 12); 144 | $output .= $this->encode64($hash, 16); 145 | 146 | return $output; 147 | } 148 | 149 | function gensalt_extended($input) 150 | { 151 | $count_log2 = min($this->iteration_count_log2 + 8, 24); 152 | # This should be odd to not reveal weak DES keys, and the 153 | # maximum valid value is (2**24 - 1) which is odd anyway. 154 | $count = (1 << $count_log2) - 1; 155 | 156 | $output = '_'; 157 | $output .= $this->itoa64[$count & 0x3f]; 158 | $output .= $this->itoa64[($count >> 6) & 0x3f]; 159 | $output .= $this->itoa64[($count >> 12) & 0x3f]; 160 | $output .= $this->itoa64[($count >> 18) & 0x3f]; 161 | 162 | $output .= $this->encode64($input, 3); 163 | 164 | return $output; 165 | } 166 | 167 | function gensalt_blowfish($input) 168 | { 169 | # This one needs to use a different order of characters and a 170 | # different encoding scheme from the one in encode64() above. 171 | # We care because the last character in our encoded string will 172 | # only represent 2 bits. While two known implementations of 173 | # bcrypt will happily accept and correct a salt string which 174 | # has the 4 unused bits set to non-zero, we do not want to take 175 | # chances and we also do not want to waste an additional byte 176 | # of entropy. 177 | $itoa64 = './ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; 178 | 179 | $output = '$2a$'; 180 | $output .= chr(ord('0') + $this->iteration_count_log2 / 10); 181 | $output .= chr(ord('0') + $this->iteration_count_log2 % 10); 182 | $output .= '$'; 183 | 184 | $i = 0; 185 | do { 186 | $c1 = ord($input[$i++]); 187 | $output .= $itoa64[$c1 >> 2]; 188 | $c1 = ($c1 & 0x03) << 4; 189 | if ($i >= 16) { 190 | $output .= $itoa64[$c1]; 191 | break; 192 | } 193 | 194 | $c2 = ord($input[$i++]); 195 | $c1 |= $c2 >> 4; 196 | $output .= $itoa64[$c1]; 197 | $c1 = ($c2 & 0x0f) << 2; 198 | 199 | $c2 = ord($input[$i++]); 200 | $c1 |= $c2 >> 6; 201 | $output .= $itoa64[$c1]; 202 | $output .= $itoa64[$c2 & 0x3f]; 203 | } while (1); 204 | 205 | return $output; 206 | } 207 | 208 | function HashPassword($password) 209 | { 210 | $random = ''; 211 | 212 | if (CRYPT_BLOWFISH == 1 && !$this->portable_hashes) { 213 | $random = $this->get_random_bytes(16); 214 | $hash = 215 | crypt($password, $this->gensalt_blowfish($random)); 216 | if (strlen($hash) == 60) 217 | return $hash; 218 | } 219 | 220 | if (CRYPT_EXT_DES == 1 && !$this->portable_hashes) { 221 | if (strlen($random) < 3) 222 | $random = $this->get_random_bytes(3); 223 | $hash = 224 | crypt($password, $this->gensalt_extended($random)); 225 | if (strlen($hash) == 20) 226 | return $hash; 227 | } 228 | 229 | if (strlen($random) < 6) 230 | $random = $this->get_random_bytes(6); 231 | $hash = 232 | $this->crypt_private($password, 233 | $this->gensalt_private($random)); 234 | if (strlen($hash) == 34) 235 | return $hash; 236 | 237 | # Returning '*' on error is safe here, but would _not_ be safe 238 | # in a crypt(3)-like function used _both_ for generating new 239 | # hashes and for validating passwords against existing hashes. 240 | return '*'; 241 | } 242 | 243 | function CheckPassword($password, $stored_hash) 244 | { 245 | $hash = $this->crypt_private($password, $stored_hash); 246 | if ($hash[0] == '*') 247 | $hash = crypt($password, $stored_hash); 248 | return $hash == $stored_hash; 249 | } 250 | } 251 | 252 | ?> 253 | -------------------------------------------------------------------------------- /src/applistx.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 24 | 25 | 33 | 34 | 159 | 160 |
    161 | 162 |
    163 |
    164 | 169 |
    170 |
    Loading app list...
    171 |
    172 |
    173 |
    174 |
    175 | 180 |
    181 | 186 |
    187 |
    188 |
    189 |
    190 | 197 |
    198 |
    199 | -------------------------------------------------------------------------------- /src/readcontactsx.php: -------------------------------------------------------------------------------- 1 | 9 | 10 | 33 | 34 | 35 | 36 | 37 | 181 | 182 |
    183 | 184 |
    185 | 186 |
    187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 |
    195 |
    196 |
    197 | 202 | 207 |
    Loading contacts...

    Loading your contacts will take around 8 seconds.
    208 |
    209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 |
    Phone NumberName
    219 |
    220 | --------------------------------------------------------------------------------