-
6.directory
-
7.gitignore
-
357LICENSE.md
-
38config.xml
-
4835license-credits.md
-
269nbproject/build.xml
-
3nbproject/configs/android.properties
-
3nbproject/configs/android_1.properties
-
5nbproject/configs/ios.properties
-
5nbproject/configs/ios_1.properties
-
9nbproject/license-mpl.txt
-
48nbproject/plugins.properties
-
9nbproject/project.properties
-
9nbproject/project.xml
-
1093package-lock.json
-
49package.json
-
BINres/logo.png
-
11scripts/generate_credits.sh
-
5scripts/npm_prepare.sh
-
80scripts/remove_bloat.sh
-
7scripts/www_npm_install.sh
-
106www/assets/css/app.css
-
16www/assets/css/backdrop.css
-
19www/assets/css/home.css
-
41www/assets/css/tablet.css
-
42www/assets/css/web-barcode.css
-
60www/assets/fonts/roboto/Roboto.css
-
BINwww/assets/fonts/roboto/Roboto_400.woff
-
BINwww/assets/fonts/roboto/Roboto_400.woff2
-
BINwww/assets/fonts/roboto/Roboto_400i.woff
-
BINwww/assets/fonts/roboto/Roboto_400i.woff2
-
BINwww/assets/fonts/roboto/Roboto_500.woff
-
BINwww/assets/fonts/roboto/Roboto_500.woff2
-
BINwww/assets/fonts/roboto/Roboto_500i.woff
-
BINwww/assets/fonts/roboto/Roboto_500i.woff2
-
BINwww/assets/fonts/roboto/Roboto_700.woff
-
BINwww/assets/fonts/roboto/Roboto_700.woff2
-
BINwww/assets/fonts/roboto/Roboto_700i.woff
-
BINwww/assets/fonts/roboto/Roboto_700i.woff2
-
31www/assets/iframeloading.html
-
BINwww/assets/images/bg.jpg
-
BINwww/assets/images/bg_night.jpg
-
2www/assets/images/companylogo.svg
-
BINwww/assets/images/icons/128.png
-
BINwww/assets/images/icons/144.png
-
BINwww/assets/images/icons/152.png
-
BINwww/assets/images/icons/192.png
-
BINwww/assets/images/icons/256.png
-
BINwww/assets/images/icons/32.png
-
BINwww/assets/images/icons/512.png
-
2www/assets/images/icons/logo.svg
-
159www/assets/js/main.js
-
269www/assets/js/platform.js
-
29www/assets/js/settings.js
-
51www/assets/js/storage.js
-
76www/assets/js/track.js
-
322www/assets/js/util.js
-
50www/index.html
-
57www/manifest.json
-
328www/package-lock.json
-
16www/package.json
-
4946www/pages/credits.html
-
112www/pages/credits.template.html
-
44www/pages/home.html
-
112www/pages/settings.html
-
43www/pages/track.html
-
69www/pages/trackresult.html
-
165www/routes.js
-
24www/settings.js
@ -0,0 +1,6 @@ |
|||
[Dolphin] |
|||
Timestamp=2019,10,5,20,2,23 |
|||
Version=4 |
|||
|
|||
[Settings] |
|||
HiddenFilesShown=true |
@ -0,0 +1,7 @@ |
|||
node_modules/ |
|||
www/node_modules/ |
|||
platforms |
|||
nbproject/private |
|||
plugins |
|||
*yarn-error.log |
|||
*npm-debug.log |
@ -0,0 +1,357 @@ |
|||
Mozilla Public License Version 2.0 |
|||
================================== |
|||
|
|||
### 1. Definitions |
|||
|
|||
**1.1. “Contributor”** |
|||
means each individual or legal entity that creates, contributes to |
|||
the creation of, or owns Covered Software. |
|||
|
|||
**1.2. “Contributor Version”** |
|||
means the combination of the Contributions of others (if any) used |
|||
by a Contributor and that particular Contributor's Contribution. |
|||
|
|||
**1.3. “Contribution”** |
|||
means Covered Software of a particular Contributor. |
|||
|
|||
**1.4. “Covered Software”** |
|||
means Source Code Form to which the initial Contributor has attached |
|||
the notice in Exhibit A, the Executable Form of such Source Code |
|||
Form, and Modifications of such Source Code Form, in each case |
|||
including portions thereof. |
|||
|
|||
**1.5. “Incompatible With Secondary Licenses”** |
|||
means |
|||
|
|||
* **(a)** that the initial Contributor has attached the notice described |
|||
in Exhibit B to the Covered Software; or |
|||
* **(b)** that the Covered Software was made available under the terms of |
|||
version 1.1 or earlier of the License, but not also under the |
|||
terms of a Secondary License. |
|||
|
|||
**1.6. “Executable Form”** |
|||
means any form of the work other than Source Code Form. |
|||
|
|||
**1.7. “Larger Work”** |
|||
means a work that combines Covered Software with other material, in |
|||
a separate file or files, that is not Covered Software. |
|||
|
|||
**1.8. “License”** |
|||
means this document. |
|||
|
|||
**1.9. “Licensable”** |
|||
means having the right to grant, to the maximum extent possible, |
|||
whether at the time of the initial grant or subsequently, any and |
|||
all of the rights conveyed by this License. |
|||
|
|||
**1.10. “Modifications”** |
|||
means any of the following: |
|||
|
|||
* **(a)** any file in Source Code Form that results from an addition to, |
|||
deletion from, or modification of the contents of Covered |
|||
Software; or |
|||
* **(b)** any new file in Source Code Form that contains any Covered |
|||
Software. |
|||
|
|||
**1.11. “Patent Claims” of a Contributor** |
|||
means any patent claim(s), including without limitation, method, |
|||
process, and apparatus claims, in any patent Licensable by such |
|||
Contributor that would be infringed, but for the grant of the |
|||
License, by the making, using, selling, offering for sale, having |
|||
made, import, or transfer of either its Contributions or its |
|||
Contributor Version. |
|||
|
|||
**1.12. “Secondary License”** |
|||
means either the GNU General Public License, Version 2.0, the GNU |
|||
Lesser General Public License, Version 2.1, the GNU Affero General |
|||
Public License, Version 3.0, or any later versions of those |
|||
licenses. |
|||
|
|||
**1.13. “Source Code Form”** |
|||
means the form of the work preferred for making modifications. |
|||
|
|||
**1.14. “You” (or “Your”)** |
|||
means an individual or a legal entity exercising rights under this |
|||
License. For legal entities, “You” includes any entity that |
|||
controls, is controlled by, or is under common control with You. For |
|||
purposes of this definition, “control” means **(a)** the power, direct |
|||
or indirect, to cause the direction or management of such entity, |
|||
whether by contract or otherwise, or **(b)** ownership of more than |
|||
fifty percent (50%) of the outstanding shares or beneficial |
|||
ownership of such entity. |
|||
|
|||
|
|||
### 2. License Grants and Conditions |
|||
|
|||
#### 2.1. Grants |
|||
|
|||
Each Contributor hereby grants You a world-wide, royalty-free, |
|||
non-exclusive license: |
|||
|
|||
* **(a)** under intellectual property rights (other than patent or trademark) |
|||
Licensable by such Contributor to use, reproduce, make available, |
|||
modify, display, perform, distribute, and otherwise exploit its |
|||
Contributions, either on an unmodified basis, with Modifications, or |
|||
as part of a Larger Work; and |
|||
* **(b)** under Patent Claims of such Contributor to make, use, sell, offer |
|||
for sale, have made, import, and otherwise transfer either its |
|||
Contributions or its Contributor Version. |
|||
|
|||
#### 2.2. Effective Date |
|||
|
|||
The licenses granted in Section 2.1 with respect to any Contribution |
|||
become effective for each Contribution on the date the Contributor first |
|||
distributes such Contribution. |
|||
|
|||
#### 2.3. Limitations on Grant Scope |
|||
|
|||
The licenses granted in this Section 2 are the only rights granted under |
|||
this License. No additional rights or licenses will be implied from the |
|||
distribution or licensing of Covered Software under this License. |
|||
Notwithstanding Section 2.1(b) above, no patent license is granted by a |
|||
Contributor: |
|||
|
|||
* **(a)** for any code that a Contributor has removed from Covered Software; |
|||
or |
|||
* **(b)** for infringements caused by: **(i)** Your and any other third party's |
|||
modifications of Covered Software, or **(ii)** the combination of its |
|||
Contributions with other software (except as part of its Contributor |
|||
Version); or |
|||
* **(c)** under Patent Claims infringed by Covered Software in the absence of |
|||
its Contributions. |
|||
|
|||
This License does not grant any rights in the trademarks, service marks, |
|||
or logos of any Contributor (except as may be necessary to comply with |
|||
the notice requirements in Section 3.4). |
|||
|
|||
#### 2.4. Subsequent Licenses |
|||
|
|||
No Contributor makes additional grants as a result of Your choice to |
|||
distribute the Covered Software under a subsequent version of this |
|||
License (see Section 10.2) or under the terms of a Secondary License (if |
|||
permitted under the terms of Section 3.3). |
|||
|
|||
#### 2.5. Representation |
|||
|
|||
Each Contributor represents that the Contributor believes its |
|||
Contributions are its original creation(s) or it has sufficient rights |
|||
to grant the rights to its Contributions conveyed by this License. |
|||
|
|||
#### 2.6. Fair Use |
|||
|
|||
This License is not intended to limit any rights You have under |
|||
applicable copyright doctrines of fair use, fair dealing, or other |
|||
equivalents. |
|||
|
|||
#### 2.7. Conditions |
|||
|
|||
Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted |
|||
in Section 2.1. |
|||
|
|||
|
|||
### 3. Responsibilities |
|||
|
|||
#### 3.1. Distribution of Source Form |
|||
|
|||
All distribution of Covered Software in Source Code Form, including any |
|||
Modifications that You create or to which You contribute, must be under |
|||
the terms of this License. You must inform recipients that the Source |
|||
Code Form of the Covered Software is governed by the terms of this |
|||
License, and how they can obtain a copy of this License. You may not |
|||
attempt to alter or restrict the recipients' rights in the Source Code |
|||
Form. |
|||
|
|||
#### 3.2. Distribution of Executable Form |
|||
|
|||
If You distribute Covered Software in Executable Form then: |
|||
|
|||
* **(a)** such Covered Software must also be made available in Source Code |
|||
Form, as described in Section 3.1, and You must inform recipients of |
|||
the Executable Form how they can obtain a copy of such Source Code |
|||
Form by reasonable means in a timely manner, at a charge no more |
|||
than the cost of distribution to the recipient; and |
|||
|
|||
* **(b)** You may distribute such Executable Form under the terms of this |
|||
License, or sublicense it under different terms, provided that the |
|||
license for the Executable Form does not attempt to limit or alter |
|||
the recipients' rights in the Source Code Form under this License. |
|||
|
|||
#### 3.3. Distribution of a Larger Work |
|||
|
|||
You may create and distribute a Larger Work under terms of Your choice, |
|||
provided that You also comply with the requirements of this License for |
|||
the Covered Software. If the Larger Work is a combination of Covered |
|||
Software with a work governed by one or more Secondary Licenses, and the |
|||
Covered Software is not Incompatible With Secondary Licenses, this |
|||
License permits You to additionally distribute such Covered Software |
|||
under the terms of such Secondary License(s), so that the recipient of |
|||
the Larger Work may, at their option, further distribute the Covered |
|||
Software under the terms of either this License or such Secondary |
|||
License(s). |
|||
|
|||
#### 3.4. Notices |
|||
|
|||
You may not remove or alter the substance of any license notices |
|||
(including copyright notices, patent notices, disclaimers of warranty, |
|||
or limitations of liability) contained within the Source Code Form of |
|||
the Covered Software, except that You may alter any license notices to |
|||
the extent required to remedy known factual inaccuracies. |
|||
|
|||
#### 3.5. Application of Additional Terms |
|||
|
|||
You may choose to offer, and to charge a fee for, warranty, support, |
|||
indemnity or liability obligations to one or more recipients of Covered |
|||
Software. However, You may do so only on Your own behalf, and not on |
|||
behalf of any Contributor. You must make it absolutely clear that any |
|||
such warranty, support, indemnity, or liability obligation is offered by |
|||
You alone, and You hereby agree to indemnify every Contributor for any |
|||
liability incurred by such Contributor as a result of warranty, support, |
|||
indemnity or liability terms You offer. You may include additional |
|||
disclaimers of warranty and limitations of liability specific to any |
|||
jurisdiction. |
|||
|
|||
|
|||
### 4. Inability to Comply Due to Statute or Regulation |
|||
|
|||
If it is impossible for You to comply with any of the terms of this |
|||
License with respect to some or all of the Covered Software due to |
|||
statute, judicial order, or regulation then You must: **(a)** comply with |
|||
the terms of this License to the maximum extent possible; and **(b)** |
|||
describe the limitations and the code they affect. Such description must |
|||
be placed in a text file included with all distributions of the Covered |
|||
Software under this License. Except to the extent prohibited by statute |
|||
or regulation, such description must be sufficiently detailed for a |
|||
recipient of ordinary skill to be able to understand it. |
|||
|
|||
|
|||
### 5. Termination |
|||
|
|||
**5.1.** The rights granted under this License will terminate automatically |
|||
if You fail to comply with any of its terms. However, if You become |
|||
compliant, then the rights granted under this License from a particular |
|||
Contributor are reinstated **(a)** provisionally, unless and until such |
|||
Contributor explicitly and finally terminates Your grants, and **(b)** on an |
|||
ongoing basis, if such Contributor fails to notify You of the |
|||
non-compliance by some reasonable means prior to 60 days after You have |
|||
come back into compliance. Moreover, Your grants from a particular |
|||
Contributor are reinstated on an ongoing basis if such Contributor |
|||
notifies You of the non-compliance by some reasonable means, this is the |
|||
first time You have received notice of non-compliance with this License |
|||
from such Contributor, and You become compliant prior to 30 days after |
|||
Your receipt of the notice. |
|||
|
|||
**5.2.** If You initiate litigation against any entity by asserting a patent |
|||
infringement claim (excluding declaratory judgment actions, |
|||
counter-claims, and cross-claims) alleging that a Contributor Version |
|||
directly or indirectly infringes any patent, then the rights granted to |
|||
You by any and all Contributors for the Covered Software under Section |
|||
2.1 of this License shall terminate. |
|||
|
|||
**5.3.** In the event of termination under Sections 5.1 or 5.2 above, all |
|||
end user license agreements (excluding distributors and resellers) which |
|||
have been validly granted by You or Your distributors under this License |
|||
prior to termination shall survive termination. |
|||
|
|||
|
|||
### 6. Disclaimer of Warranty |
|||
|
|||
> Covered Software is provided under this License on an “as is” |
|||
> basis, without warranty of any kind, either expressed, implied, or |
|||
> statutory, including, without limitation, warranties that the |
|||
> Covered Software is free of defects, merchantable, fit for a |
|||
> particular purpose or non-infringing. The entire risk as to the |
|||
> quality and performance of the Covered Software is with You. |
|||
> Should any Covered Software prove defective in any respect, You |
|||
> (not any Contributor) assume the cost of any necessary servicing, |
|||
> repair, or correction. This disclaimer of warranty constitutes an |
|||
> essential part of this License. No use of any Covered Software is |
|||
> authorized under this License except under this disclaimer. |
|||
|
|||
### 7. Limitation of Liability |
|||
|
|||
> Under no circumstances and under no legal theory, whether tort |
|||
> (including negligence), contract, or otherwise, shall any |
|||
> Contributor, or anyone who distributes Covered Software as |
|||
> permitted above, be liable to You for any direct, indirect, |
|||
> special, incidental, or consequential damages of any character |
|||
> including, without limitation, damages for lost profits, loss of |
|||
> goodwill, work stoppage, computer failure or malfunction, or any |
|||
> and all other commercial damages or losses, even if such party |
|||
> shall have been informed of the possibility of such damages. This |
|||
> limitation of liability shall not apply to liability for death or |
|||
> personal injury resulting from such party's negligence to the |
|||
> extent applicable law prohibits such limitation. Some |
|||
> jurisdictions do not allow the exclusion or limitation of |
|||
> incidental or consequential damages, so this exclusion and |
|||
> limitation may not apply to You. |
|||
|
|||
|
|||
### 8. Litigation |
|||
|
|||
Any litigation relating to this License may be brought only in the |
|||
courts of a jurisdiction where the defendant maintains its principal |
|||
place of business and such litigation shall be governed by laws of that |
|||
jurisdiction, without reference to its conflict-of-law provisions. |
|||
Nothing in this Section shall prevent a party's ability to bring |
|||
cross-claims or counter-claims. |
|||
|
|||
|
|||
### 9. Miscellaneous |
|||
|
|||
This License represents the complete agreement concerning the subject |
|||
matter hereof. If any provision of this License is held to be |
|||
unenforceable, such provision shall be reformed only to the extent |
|||
necessary to make it enforceable. Any law or regulation which provides |
|||
that the language of a contract shall be construed against the drafter |
|||
shall not be used to construe this License against a Contributor. |
|||
|
|||
|
|||
### 10. Versions of the License |
|||
|
|||
#### 10.1. New Versions |
|||
|
|||
Mozilla Foundation is the license steward. Except as provided in Section |
|||
10.3, no one other than the license steward has the right to modify or |
|||
publish new versions of this License. Each version will be given a |
|||
distinguishing version number. |
|||
|
|||
#### 10.2. Effect of New Versions |
|||
|
|||
You may distribute the Covered Software under the terms of the version |
|||
of the License under which You originally received the Covered Software, |
|||
or under the terms of any subsequent version published by the license |
|||
steward. |
|||
|
|||
#### 10.3. Modified Versions |
|||
|
|||
If you create software not governed by this License, and you want to |
|||
create a new license for such software, you may create and use a |
|||
modified version of this License if you rename the license and remove |
|||
any references to the name of the license steward (except to note that |
|||
such modified license differs from this License). |
|||
|
|||
#### 10.4. Distributing Source Code Form that is Incompatible With Secondary Licenses |
|||
|
|||
If You choose to distribute Source Code Form that is Incompatible With |
|||
Secondary Licenses under the terms of this version of the License, the |
|||
notice described in Exhibit B of this License must be attached. |
|||
|
|||
## Exhibit A - Source Code Form License Notice |
|||
|
|||
This Source Code Form is subject to the terms of the Mozilla Public |
|||
License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|||
|
|||
If it is not possible or desirable to put the notice in a particular |
|||
file, then You may include the notice in a location (such as a LICENSE |
|||
file in a relevant directory) where a recipient would be likely to look |
|||
for such a notice. |
|||
|
|||
You may add additional accurate notices of copyright ownership. |
|||
|
|||
## Exhibit B - “Incompatible With Secondary Licenses” Notice |
|||
|
|||
This Source Code Form is "Incompatible With Secondary Licenses", as |
|||
defined by the Mozilla Public License, v. 2.0. |
|||
|
|||
|
@ -0,0 +1,38 @@ |
|||
<?xml version='1.0' encoding='utf-8'?> |
|||
<widget id="com.netsyms.repairapp" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> |
|||
<name short="PC Repair">Netsyms PC Repair</name> |
|||
<description> |
|||
Book, track, pay, and manage your computer repair from Netsyms Technologies |
|||
</description> |
|||
<author email="dev@netsyms.com" href="https://netsyms.com"> |
|||
Netsyms Technologies |
|||
</author> |
|||
<content src="index.html" /> |
|||
<plugin name="cordova-plugin-whitelist" spec="1" /> |
|||
<access origin="*" /> |
|||
<allow-intent href="http://*/*" /> |
|||
<allow-intent href="https://*/*" /> |
|||
<allow-intent href="tel:*" /> |
|||
<allow-intent href="sms:*" /> |
|||
<allow-intent href="mailto:*" /> |
|||
<allow-intent href="geo:*" /> |
|||
<access launch-external="yes" origin="geo:*" /> |
|||
<icon src="res/logo.png" /> |
|||
<platform name="android"> |
|||
<allow-intent href="market:*" /> |
|||
<preference name="HeaderColor" value="#0D87F6" /> |
|||
<!-- <resource-file src="/res/android/drawable/ic_launcher_background.xml" target="/app/src/main/res/drawable/ic_launcher_background.xml" /> |
|||
<resource-file src="/res/android/drawable/ic_launcher_foreground.xml" target="/app/src/main/res/drawable/ic_launcher_foreground.xml" /> |
|||
<resource-file src="res/android/mipmap-anydpi-v26/ic_launcher.xml" target="app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml" /> |
|||
<icon background="res/android/drawable/ic_launcher_background.xml" density="mdpi" foreground="res/android/drawable/ic_launcher_foreground.xml" src="res/android/mipmap-mdpi/ic_launcher.png" /> |
|||
<icon background="res/android/drawable/ic_launcher_background.xml" density="hdpi" foreground="res/android/drawable/ic_launcher_foreground.xml" src="res/android/mipmap-hdpi/ic_launcher.png" /> |
|||
<icon background="res/android/drawable/ic_launcher_background.xml" density="xhdpi" foreground="res/android/drawable/ic_launcher_foreground.xml" src="res/android/mipmap-xhdpi/ic_launcher.png" /> |
|||
<icon background="res/android/drawable/ic_launcher_background.xml" density="xxhdpi" foreground="res/android/drawable/ic_launcher_foreground.xml" src="res/android/mipmap-xxhdpi/ic_launcher.png" /> |
|||
<icon background="res/android/drawable/ic_launcher_background.xml" density="xxxhdpi" foreground="res/android/drawable/ic_launcher_foreground.xml" src="res/android/mipmap-xxxhdpi/ic_launcher.png" /> --> |
|||
</platform> |
|||
<platform name="ios"> |
|||
<allow-intent href="itms:*" /> |
|||
<allow-intent href="itms-apps:*" /> |
|||
</platform> |
|||
<hook src="scripts/npm_prepare.sh" type="before_prepare" /> |
|||
</widget> |
4835
license-credits.md
File diff suppressed because it is too large
View File
@ -0,0 +1,269 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!-- |
|||
|
|||
Licensed to the Apache Software Foundation (ASF) under one |
|||
or more contributor license agreements. See the NOTICE file |
|||
distributed with this work for additional information |
|||
regarding copyright ownership. The ASF licenses this file |
|||
to you under the Apache License, Version 2.0 (the |
|||
"License"); you may not use this file except in compliance |
|||
with the License. You may obtain a copy of the License at |
|||
|
|||
http://www.apache.org/licenses/LICENSE-2.0 |
|||
|
|||
Unless required by applicable law or agreed to in writing, |
|||
software distributed under the License is distributed on an |
|||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
|||
KIND, either express or implied. See the License for the |
|||
specific language governing permissions and limitations |
|||
under the License. |
|||
|
|||
--> |
|||
<!-- |
|||
Generated file; DO NOT EDIT. |
|||
--> |
|||
<project name="PackageNotice" basedir=".."> |
|||
<property file="nbproject/configs/${config}.properties" /> |
|||
|
|||
<scriptdef name="checkVersion" language="javascript"> |
|||
<attribute name="first" /> |
|||
<attribute name="property" /> |
|||
<![CDATA[ |
|||
var first = attributes.get("first"); |
|||
if (first >= "3.0.0") { |
|||
project.setProperty(attributes.get("property"), true); |
|||
} |
|||
]]> |
|||
</scriptdef> |
|||
|
|||
<scriptdef name="forDevice" language="javascript"> |
|||
<![CDATA[ |
|||
var dev = project.getProperty("device"); |
|||
if (dev == "device") { |
|||
project.setProperty("build.for.device", true); |
|||
} |
|||
]]> |
|||
</scriptdef> |
|||
|
|||
<target name="check-cordova-project"> |
|||
<condition property="cordova.project"> |
|||
<or> |
|||
<available file=".cordova"/> |
|||
<available file="hooks"/> |
|||
</or> |
|||
</condition> |
|||
</target> |
|||
|
|||
<target name="upgrade-to-cordova-project" depends="check-cordova-project,check-cordova-version" unless="cordova.project"> |
|||
<echo level="info" message="${cordova.command} -d create ${java.io.tmpdir}/nb_temp_project com.coolappz.${project.name} ${project.name}" /> |
|||
<delete dir="${java.io.tmpdir}/nb_temp_project"/> |
|||
<exec executable="${cordova.command}" resolveexecutable="true" searchpath="true" failonerror="true" > |
|||
<env key="${cordova.path.key}" path="${cordova.path.value}:${android.sdk.home}/tools:${android.sdk.home}/platform-tools:${jdk.home}/bin:${ant.home}/bin:${jdk.home}/bin"/> |
|||
<env key="JAVA_HOME" path="${jdk.home}"/> |
|||
<arg value="-d"/> |
|||
<arg value="create"/> |
|||
<arg value="${java.io.tmpdir}/nb_temp_project"/> |
|||
<arg value="com.coolappz.${project.name}"/> |
|||
<arg value="${project.name}" /> |
|||
</exec> |
|||
<copy todir="." overwrite="true" failonerror="false"> |
|||
<fileset dir="${java.io.tmpdir}/nb_temp_project"/> |
|||
</copy> |
|||
<delete dir="${java.io.tmpdir}/nb_temp_project"/> |
|||
<delete dir="www"/> |
|||
<copy todir="www" failonerror="false" quiet="true" > |
|||
<fileset dir="${site.root}"/> |
|||
</copy> |
|||
</target> |
|||
|
|||
<target name="create-hello-world" depends="check-cordova-version"> |
|||
<echo level="info" message="${cordova.command} -d create www_nb_temp com.coolappz.${project.name} ${project.name}" /> |
|||
<exec executable="${cordova.command}" resolveexecutable="true" searchpath="true" failonerror="true"> |
|||
<env key="${cordova.path.key}" path="${cordova.path.value}:${android.sdk.home}/tools:${android.sdk.home}/platform-tools:${jdk.home}/bin:${ant.home}/bin:${jdk.home}/bin"/> |
|||
<env key="JAVA_HOME" path="${jdk.home}"/> |
|||
<arg value="-d"/> |
|||
<arg value="create"/> |
|||
<arg value="www_nb_temp"/> |
|||
<arg value="com.coolappz.${project.name}"/> |
|||
<arg value="${project.name}" /> |
|||
</exec> |
|||
<delete dir="www"/> |
|||
<mkdir dir="www"/> |
|||
<move file="www_nb_temp/www" tofile="www"/> |
|||
<delete dir="www_nb_temp"/> |
|||
<delete file="www/config.xml"/> |
|||
</target> |
|||
|
|||
<taskdef |
|||
classname="org.netbeans.modules.cordova.updatetask.ReadConfigTask" |
|||
classpath="${update.task.jar}" |
|||
name="readconfig"/> |
|||
|
|||
<taskdef |
|||
classname="org.netbeans.modules.cordova.updatetask.PluginTask" |
|||
classpath="${update.task.jar}" |
|||
name="plugintask"/> |
|||
|
|||
|
|||
<target name="check-cordova-version"> |
|||
<property environment="env"/> |
|||
<checkVersion first="${cordova.version}" property="cordova.ver.3"/> |
|||
<fail message="Cordova version 3 or greater required." unless="cordova.ver.3"/> |
|||
<readconfig/> |
|||
<forDevice/> |
|||
</target> |
|||
|
|||
<target name="check-android-template"> |
|||
<available file="platforms/android" property="android.generated.exists"/> |
|||
</target> |
|||
|
|||
<target name="check-ios-template"> |
|||
<available file="platforms/ios" property="ios.generated.exists"/> |
|||
</target> |
|||
|
|||
<target name="create-android" depends="check-android-template,check-cordova-version,upgrade-to-cordova-project" unless="android.generated.exists"> |
|||
<echo level="info" message="${cordova.command} -d platform add android"/> |
|||
<exec executable="${cordova.command}" resolveexecutable="true" searchpath="true" failonerror="true"> |
|||
<env key="${cordova.path.key}" path="${cordova.path.value}:${android.sdk.home}/tools:${android.sdk.home}/platform-tools:${jdk.home}/bin:${ant.home}/bin:${jdk.home}/bin"/> |
|||
<env key="JAVA_HOME" path="${jdk.home}"/> |
|||
<arg value="-d"/> |
|||
<arg value="platform"/> |
|||
<arg value="add"/> |
|||
<arg value="android"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="create-ios" depends="check-ios-template,check-cordova-version,upgrade-to-cordova-project" unless="ios.generated.exists"> |
|||
<echo level="info" message="${cordova.command} -d platform add ios"/> |
|||
<exec executable="${cordova.command}" resolveexecutable="true" searchpath="true" dir="." failonerror="true"> |
|||
<env key="${cordova.path.key}" path="${cordova.path.value}:${android.sdk.home}/tools:${android.sdk.home}/platform-tools:${jdk.home}/bin:${ant.home}/bin:${jdk.home}/bin"/> |
|||
<env key="JAVA_HOME" path="${jdk.home}"/> |
|||
<arg value="-d"/> |
|||
<arg value="platform"/> |
|||
<arg value="add"/> |
|||
<arg value="ios"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="rebuild-ios" depends="clean-ios,build-ios"/> |
|||
|
|||
<target name="build-ios" depends="create-ios,update-plugins,update-ios,build-ios-xcodebuild,build-ios-ipa"/> |
|||
|
|||
<target name="build-ios-xcodebuild"> |
|||
<property name="path" location="platforms/ios/build"/> |
|||
<exec executable="xcodebuild" dir="platforms/ios" failonerror="true"> |
|||
<arg value="-project"/> |
|||
<arg value="${project.name}.xcodeproj"/> |
|||
<arg value="ARCHS=${ios.build.arch}"/> |
|||
<arg value="-target"/> |
|||
<arg value="${project.name}"/> |
|||
<arg value="-configuration"/> |
|||
<arg value="Release"/> |
|||
<arg value="-sdk"/> |
|||
<arg value="${ios.build.sdk}" /> |
|||
<arg value="build"/> |
|||
<arg value="CONFIGURATION_BUILD_DIR=${path}"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="build-ios-ipa" if="build.for.device"> |
|||
<exec executable="xcrun" dir="platforms/ios/build" failonerror="true"> |
|||
<env key="CODESIGN_ALLOCATE" value="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate" /> |
|||
<arg value="-sdk"/> |
|||
<arg value="${ios.build.sdk}" /> |
|||
<arg value="PackageApplication"/> |
|||
<arg value="-v"/> |
|||
<arg value="${project.name}.app"/> |
|||
<arg value="-o"/> |
|||
<arg value="${basedir}/platforms/ios/build/${project.name}.ipa"/> |
|||
<arg value="--sign"/> |
|||
<arg value="${ios.certificate.name}"/> |
|||
<arg value="--embed"/> |
|||
<arg value="${ios.provisioning.profile}"/> |
|||
</exec> |
|||
<available file="${basedir}/platforms/ios/build/${project.name}.ipa" property="ipa.found"/> |
|||
<fail unless="ipa.found" message="PackageApplication failed."/> |
|||
</target> |
|||
|
|||
|
|||
<target name="sim-ios" depends="build-ios,ios-run-device,ios-run-simulator"> |
|||
</target> |
|||
|
|||
<target name="ios-run-device" if="build.for.device"> |
|||
<echo> |
|||
Install "${basedir}/platforms/ios/build/${project.name}.ipa" through iTunes and run it. |
|||
</echo> |
|||
<exec executable="open" failonerror="true"> |
|||
<arg value="${basedir}/platforms/ios/build/${project.name}.ipa"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="ios-run-simulator" unless="build.for.device"> |
|||
<exec executable="killall" dir="platforms/ios/build"> |
|||
<arg value="launchd_sim"/> |
|||
</exec> |
|||
<exec executable="${ios.sim.exec}" dir="platforms/ios/build"> |
|||
<arg line="launch ${project.name}.app ${ios.device.args} --exit"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="update-plugins"> |
|||
<plugintask/> |
|||
</target> |
|||
|
|||
<target name="update-android"> |
|||
<echo level="info" message="${cordova.command} prepare android"/> |
|||
|
|||
<exec executable="${cordova.command}" resolveexecutable="true" searchpath="true" failonerror="true"> |
|||
<env key="${cordova.path.key}" path="${cordova.path.value}:${android.sdk.home}/tools:${android.sdk.home}/platform-tools:${jdk.home}/bin:${ant.home}/bin:${jdk.home}/bin"/> |
|||
<env key="JAVA_HOME" path="${jdk.home}"/> |
|||
<arg value="prepare"/> |
|||
<arg value="android"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
|
|||
<target name="update-ios"> |
|||
<echo level="info" message="${cordova.command} prepare ios"/> |
|||
<exec executable="${cordova.command}" resolveexecutable="true" searchpath="true" failonerror="true"> |
|||
<env key="${cordova.path.key}" path="${cordova.path.value}:${android.sdk.home}/tools:${android.sdk.home}/platform-tools:${jdk.home}/bin:${ant.home}/bin:${jdk.home}/bin"/> |
|||
<env key="JAVA_HOME" path="${jdk.home}"/> |
|||
<arg value="prepare"/> |
|||
<arg value="ios"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="rebuild-android" depends="clean-android,build-android"/> |
|||
|
|||
<target name="build-android" depends="create-android,update-plugins"> |
|||
<echo level="info" message="${cordova.command} -d build android"/> |
|||
<exec executable="${cordova.command}" resolveexecutable="true" searchpath="true" failonerror="true"> |
|||
<env key="${cordova.path.key}" path="${cordova.path.value}:${android.sdk.home}/tools:${android.sdk.home}/platform-tools:${jdk.home}/bin:${ant.home}/bin:${jdk.home}/bin"/> |
|||
<env key="JAVA_HOME" path="${jdk.home}"/> |
|||
<arg value="-d"/> |
|||
<arg value="build"/> |
|||
<arg value="android"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="sim-android" depends="create-android,update-plugins"> |
|||
<echo level="info" message="${cordova.command} -d ${android.target.device.arg} android"/> |
|||
<exec executable="${cordova.command}" resolveexecutable="true" searchpath="true" failonerror="true"> |
|||
<env key="${cordova.path.key}" path="${cordova.path.value}:${android.sdk.home}/tools:${android.sdk.home}/platform-tools:${jdk.home}/bin:${ant.home}/bin:${jdk.home}/bin"/> |
|||
<env key="JAVA_HOME" path="${jdk.home}"/> |
|||
<arg value="-d"/> |
|||
<arg value="${android.target.device.arg}"/> |
|||
<arg value="android"/> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="clean-android" depends="check-android-template" if="android.generated.exists"> |
|||
<exec executable="./gradlew" dir="platforms/android"> |
|||
<arg value="clean" /> |
|||
</exec> |
|||
</target> |
|||
|
|||
<target name="clean-ios" depends="check-ios-template" if="ios.generated.exists"> |
|||
<exec executable="platforms/ios/cordova/clean" /> |
|||
</target> |
|||
</project> |
@ -0,0 +1,3 @@ |
|||
device=emulator |
|||
display.name=Android Emulator |
|||
type=android |
@ -0,0 +1,3 @@ |
|||
device=device |
|||
display.name=Android Device |
|||
type=android |
@ -0,0 +1,5 @@ |
|||
device=emulator |
|||
display.name=iPhone Simulator |
|||
ios.build.arch=i386 |
|||
ios.build.sdk= |
|||
type=ios |
@ -0,0 +1,5 @@ |
|||
device=device |
|||
display.name=iPhone Device |
|||
ios.build.arch=armv7 armv7s |
|||
ios.build.sdk= |
|||
type=ios |
@ -0,0 +1,9 @@ |
|||
<#if licenseFirst??> |
|||
${licenseFirst} |
|||
</#if> |
|||
${licensePrefix}This Source Code Form is subject to the terms of the Mozilla Public |
|||
${licensePrefix}License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
${licensePrefix}file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|||
<#if licenseLast??> |
|||
${licenseLast} |
|||
</#if> |
@ -0,0 +1,48 @@ |
|||
# Licensed to the Apache Software Foundation (ASF) under one |
|||
# or more contributor license agreements. See the NOTICE file |
|||
# distributed with this work for additional information |
|||
# regarding copyright ownership. The ASF licenses this file |
|||
# to you under the Apache License, Version 2.0 (the |
|||
# "License"); you may not use this file except in compliance |
|||
# with the License. You may obtain a copy of the License at |
|||
# |
|||
# http://www.apache.org/licenses/LICENSE-2.0 |
|||
# |
|||
# Unless required by applicable law or agreed to in writing, |
|||
# software distributed under the License is distributed on an |
|||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
|||
# KIND, either express or implied. See the License for the |
|||
# specific language governing permissions and limitations |
|||
# under the License. |
|||
|
|||
# This is a list of plugins installed in your project |
|||
# You can delete or add new plugins |
|||
# |
|||
# Format is following: |
|||
# id.of.plugin=url_of_repository |
|||
# |
|||
# Corresponding "id.of.plugin" can be found in the plugin's plugin.xml file: |
|||
# <plugin xmlns="http://apache.org/cordova/ns/plugins/1.0" id="foo.bar.plugin" version="0.0.1"> |
|||
# |
|||
# This list contains all core cordova plugins. |
|||
# |
|||
# For more information about plugins see http://cordova.apache.org/blog/releases/2013/07/23/cordova-3.html |
|||
# |
|||
|
|||
cordova-plugin-device=https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git |
|||
cordova-plugin-network-information=https://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information.git |
|||
cordova-plugin-battery-status=https://git-wip-us.apache.org/repos/asf/cordova-plugin-battery-status.git |
|||
cordova-plugin-device-motion=https://git-wip-us.apache.org/repos/asf/cordova-plugin-device-motion.git |
|||
cordova-plugin-device-orientation=https://git-wip-us.apache.org/repos/asf/cordova-plugin-device-orientation.git |
|||
cordova-plugin-geolocation=https://git-wip-us.apache.org/repos/asf/cordova-plugin-geolocation.git |
|||
cordova-plugin-camera=https://git-wip-us.apache.org/repos/asf/cordova-plugin-camera.git |
|||
cordova-plugin-media-capture=https://git-wip-us.apache.org/repos/asf/cordova-plugin-media-capture.git |
|||
cordova-plugin-media=https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git |
|||
cordova-plugin-file=https://git-wip-us.apache.org/repos/asf/cordova-plugin-file.git |
|||
cordova-plugin-file-transfer=https://git-wip-us.apache.org/repos/asf/cordova-plugin-file-transfer.git |
|||
cordova-plugin-dialogs=https://git-wip-us.apache.org/repos/asf/cordova-plugin-dialogs.git |
|||
cordova-plugin-vibration=https://git-wip-us.apache.org/repos/asf/cordova-plugin-vibration.git |
|||
cordova-plugin-contacts=https://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts.git |
|||
cordova-plugin-globalization=https://git-wip-us.apache.org/repos/asf/cordova-plugin-globalization.git |
|||
cordova-plugin-splashscreen=https://git-wip-us.apache.org/repos/asf/cordova-plugin-splashscreen.git |
|||
cordova-plugin-console=https://git-wip-us.apache.org/repos/asf/cordova-plugin-console.git |
@ -0,0 +1,9 @@ |
|||
auxiliary.org-netbeans-modules-cordova.cordova_5f_build_5f_script_5f_version=52 |
|||
auxiliary.org-netbeans-modules-cordova.phonegap=true |
|||
auxiliary.org-netbeans-modules-javascript-nodejs.run_2e_enabled=false |
|||
browser.run=true |
|||
file.reference.PCRepair-www=www |
|||
files.encoding=UTF-8 |
|||
project.licensePath=./nbproject/license-mpl.txt |
|||
site.root.folder=${file.reference.PCRepair-www} |
|||
start.file=index.html |
@ -0,0 +1,9 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project xmlns="http://www.netbeans.org/ns/project/1"> |
|||
<type>org.netbeans.modules.web.clientproject</type> |
|||
<configuration> |
|||
<data xmlns="http://www.netbeans.org/ns/clientside-project/1"> |
|||
<name>Netsyms PC Repair App</name> |
|||
</data> |
|||
</configuration> |
|||
</project> |
1093
package-lock.json
File diff suppressed because it is too large
View File
@ -0,0 +1,49 @@ |
|||
{ |
|||
"name": "com.netsyms.repairapp", |
|||
"displayName": "Netsyms PC Repair", |
|||
"version": "1.0.0", |
|||
"description": "App to book, track, pay, and manage computer repair from Netsyms Technologies", |
|||
"product_string": "Netsyms PC Repair", |
|||
"main": "www/index.html", |
|||
"window": { |
|||
"icon": "res/logo.png", |
|||
"id": "com.netsyms.repairapp_window_main_00001", |
|||
"frame": true |
|||
}, |
|||
"user_agent": "Mozilla/5.0 (%osinfo) %name/%ver NW.js/%nwver WebKit/%webkit_ver Chromium/%chromium_ver", |
|||
"scripts": { |
|||
"test": "echo \"Error: no test specified\" && exit 1" |
|||
}, |
|||
"keywords": [ |
|||
"ecosystem:cordova" |
|||
], |
|||
"author": "Netsyms Technologies", |
|||
"license": "MPL-2.0", |
|||
"cordova": { |
|||
"plugins": { |
|||
"cordova-plugin-geolocation": {}, |
|||
"cordova-plugin-inappbrowser": {}, |
|||
"cordova-plugin-whitelist": {}, |
|||
"phonegap-plugin-barcodescanner": {}, |
|||
"cordova-plugin-device": {}, |
|||
"cordova-plugin-statusbar": {}, |
|||
"cordova-plugin-headercolor": {}, |
|||
"cordova-plugin-theme-detection": {} |
|||
}, |
|||
"platforms": [ |
|||
"android", |
|||
"browser" |
|||
] |
|||
}, |
|||
"dependencies": { |
|||
"cordova-android": "^8.1.0", |
|||
"cordova-browser": "^6.0.0", |
|||
"cordova-plugin-device": "^2.0.3", |
|||
"cordova-plugin-headercolor": "^1.0.0", |
|||
"cordova-plugin-inappbrowser": "^3.1.0", |
|||
"cordova-plugin-statusbar": "^2.4.3", |
|||
"cordova-plugin-theme-detection": "file:../../../../../../sources/cordova-plugin-theme-detection", |
|||
"cordova-plugin-whitelist": "^1.3.4" |
|||
}, |
|||
"devDependencies": {} |
|||
} |
After Width: 512 | Height: 512 | Size: 13 KiB |
@ -0,0 +1,11 @@ |
|||
#!/bin/bash |
|||
|
|||
echo "Generating credits files..." |
|||
|
|||
cd www |
|||
yarn licenses generate-disclaimer > ../license-credits.md |
|||
cd .. |
|||
yarn licenses generate-disclaimer >> license-credits.md |
|||
|
|||
cp www/pages/credits.template.html www/pages/credits.html |
|||
sed -e "/{{credits}}/r license-credits.md" -e "/{{credits}}/d" -i www/pages/credits.html |
@ -0,0 +1,5 @@ |
|||
#!/bin/sh |
|||
|
|||
./scripts/www_npm_install.sh |
|||
./scripts/generate_credits.sh |
|||
./scripts/remove_bloat.sh |
@ -0,0 +1,80 @@ |
|||
#!/bin/bash |
|||
# This script removes some stuff in `www/node_modules` that the app doesn't need to run. |
|||
# It removes about 6MB from the build size. |
|||
|
|||
echo "Removing bloat in node_modules..." |
|||
|
|||
set -e |
|||
|
|||
DIR="$(pwd)/www/node_modules" |
|||
|
|||
cd $DIR |
|||
rm -rf {ansicolors,buffer-from,cardinal,chartjs-color,chartjs-color-string,color-convert,color-name} |
|||
rm -rf {concat-stream,core-util-is,csscolorparser,dom7,earcut,esprima,geojson-vt} |
|||
rm -rf {gl-matrix,grid-index,ieee754,inherits,isarray,kdbush,leaflet-geometryutil,@mapbox,minimist} |
|||
rm -rf {moment,murmurhash-js,path-to-regexp,pbf,potpack,process-nextick-args} |
|||
rm -rf {protocol-buffers-schema,quickselect,readable-stream,redeyed,resolve-protobuf-schema} |
|||
rm -rf {rw,safe-buffer,sharkdown,split,ssr-window,string_decoder,supercluster} |
|||
rm -rf {template7,text-encoding,through,tinyqueue,ts-custom-error,typedarray} |
|||
rm -rf {util-deprecate,vt-pbf,wgs84} |
|||
|
|||
# Make npm stop complaining that these don't exist by actually removing them |
|||
rm -rf .bin/* |
|||
|
|||
cd $DIR |
|||
|
|||
cd bwip-js |
|||
rm -rf {bin,examples,src,barcode.ps,demo.html,stb_truetype.h} |
|||
rm -rf dist/bwip-js.js |
|||
rm -rf dist/node-bwipjs.js |
|||
cd $DIR |
|||
|
|||
cd @fortawesome/fontawesome-pro |
|||
rm -rf {js,less,metadata,scss,sprites,svgs} |
|||
find css -type f -not -name 'all.min.css' -delete |
|||
cd $DIR |
|||
|
|||
cd framework7 |
|||
rm -rf components |
|||
rm -rf lazy-components |
|||
rm -rf less |
|||
rm -rf modules |
|||
rm -rf utils |
|||
rm -f framework7.* |
|||
rm -f framework7-lite.* |
|||
find css -type f -not -name 'framework7.bundle.min.css' -delete |
|||
find js -type f -not -name 'framework7.bundle.min.js' -delete |
|||
cd $DIR |
|||
|
|||
cd jquery |
|||
rm -rf src |
|||
rm -rf external |
|||
find dist -type f -not -name 'jquery.min.js' -delete |
|||
cd $DIR |
|||
|
|||
cd jsbarcode |
|||
rm -rf .dockerignore .eslintignore .eslintrcautomation bower.json CONTRIBUTING.md docker-compose.yml Dockerfile example gulpfile.js jsbarcode.d.ts README.md src test .travis.yml |
|||
rm -rf {automation,bin} |
|||
rm -rf dist/barcodes |
|||
rm -rf dist/JsBarcode.all.js |
|||
cd $DIR |
|||
|
|||
cd material-design-icons |
|||
# Remove everything except the icon font and license, but also exclude the |
|||
# current and parent folder (. , ..) so rm won't complain about refusing |
|||
# to delete the whole filesystem |
|||
find . -maxdepth 1 -not -name '.' -not -name 'LICENSE' -not -name 'iconfont' -exec rm -rf {} \; |
|||
cd $DIR |
|||
|
|||
cd mapbox-gl |
|||
rm -rf {build,flow-typed,src} |
|||
find dist -type f -not -name 'mapbox-gl.css' -not -name 'mapbox-gl.js' -delete |
|||
rm -rf dist/style-spec |
|||
cd $DIR |
|||
|
|||
cd @zxing/library |
|||
rm -rf {esm,esm5} |
|||
rm -f umd/index.min.js.map |
|||
cd $DIR |
|||
|
|||
echo "Cleanup finished" |
@ -0,0 +1,7 @@ |
|||
#!/bin/bash |
|||
|
|||
echo "Installing node modules in www/..." |
|||
|
|||
cd www |
|||
npm install |
|||
cd .. |
@ -0,0 +1,106 @@ |
|||
/* |
|||
This Source Code Form is subject to the terms of the Mozilla Public |
|||
License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|||
*/ |
|||
|
|||
/* |
|||
Framework7 and FontAwesome both have a .fab class |
|||
*/ |
|||
.fafab { |
|||
font-family: "Font Awesome 5 Brands"; |
|||
} |
|||
|
|||
.fab { |
|||
-webkit-text-size-adjust: 100%; |
|||
-webkit-font-smoothing: antialiased; |
|||
font-family: var(--f7-font-family); |
|||
font-size: var(--f7-font-size); |
|||
line-height: var(--f7-line-height); |
|||
} |
|||
|
|||
.page { |
|||
background-image: linear-gradient(180deg, rgba(13,135,246,1) 0%, rgba(13,135,246,1) var(--f7-navbar-height), rgba(13,135,246,0.5) 30%, rgba(13,135,246,0.4) 50%, rgba(255,255,255,0.3) 80%), url(../images/bg.jpg); |
|||
background-size: cover; |
|||
background-position: top; |
|||
} |
|||
|
|||
.theme-dark .page { |
|||
background-image: linear-gradient(180deg, rgba(0,0,0,1) 0px, rgba(0,0,0,1) var(--f7-navbar-height), rgba(0,0,0,0) 30%), url(../images/bg_night.jpg); |
|||
background-size: cover; |
|||
background-position: top; |
|||
} |
|||
|
|||
.navbar { |
|||
background-color: rgba(13,135,246,1); |
|||
} |
|||
|
|||
.theme-dark .navbar { |
|||
background-color: black; |
|||
} |
|||
|
|||
.page-content-fab-pad { |
|||
padding-bottom: var(--f7-fab-size); |
|||
} |
|||
|
|||
.navbar, .item-link .item-title, .item-media, .item-divider, .item-label, .fab, .button, .noselect { |
|||
user-select: none; |
|||
} |
|||
|
|||
.navbar-inner { |
|||
-webkit-app-region: drag; |
|||
} |
|||
.navbar-inner > * { |
|||
-webkit-app-region: no-drag; |
|||
} |
|||
|
|||
.list ul { |
|||
background-color: rgba(255,255,255,0.65); |
|||
} |
|||
.list ul li.item-divider { |
|||
background-color: rgba(255,255,255,0.5); |
|||
} |
|||
.theme-dark .list ul { |
|||
background-color: rgba(0,0,0,0.65); |
|||
} |
|||
.theme-dark .list ul li.item-divider { |
|||
background-color: rgba(0,0,0,0.5); |
|||
} |
|||
|
|||
/* |
|||
* Material icons are too big and disrupt the flow of text |
|||
*/ |
|||
.block .material-icons { |
|||
font-size: var(--f7-block-font-size); |
|||
} |
|||
|
|||
.material-icons.material-icons-24px { |
|||
font-size: 24px; |
|||
} |
|||
|
|||
.material-icons-intext .material-icons { |
|||
font-size: var(--f7-block-font-size); |
|||
} |
|||
|
|||
.no-animation * { |
|||
-webkit-transition: 10ms !important; |
|||
-moz-transition: 10ms !important; |
|||
-o-transition: 10ms !important; |
|||
-ms-transition: 10ms !important; |
|||
transition: 10ms !important; |
|||
} |
|||
|
|||
/* |
|||
Allow easily changing help text to reflect finger/mouse usage. |
|||
*/ |
|||
.clicktext { |
|||
display: none; |
|||
} |
|||
@media (pointer:fine) { |
|||
.taptext { |
|||
display: none; |
|||
} |
|||
.clicktext { |
|||
display: initial; |
|||
} |
|||
} |
@ -0,0 +1,16 @@ |
|||
/* |
|||
* This Source Code Form is subject to the terms of the Mozilla Public |
|||
* License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|||
*/ |
|||
|
|||
/* |
|||
We want the backdrops to be there so there aren't accidental touches, |
|||
but we don't want them to obscure anything. |
|||
*/ |
|||
.actions-backdrop.backdrop-in, .custom-modal-backdrop.backdrop-in, |
|||
.dialog-backdrop.backdrop-in, .popover-backdrop.backdrop-in, |
|||
.popup-backdrop.backdrop-in, .preloader-backdrop.backdrop-in, |
|||
.sheet-backdrop.backdrop-in { |
|||
opacity: 0; |
|||
} |
@ -0,0 +1,19 @@ |
|||
/* |
|||
This Source Code Form is subject to the terms of the Mozilla Public |
|||
License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|||
*/ |
|||
/* |
|||
Created on : Oct 4, 2020, 8:45:20 PM |
|||
Author : Skylar Ittner |
|||
*/ |
|||
|
|||
|
|||
.widelogo { |
|||
max-width: 300px; |
|||
width: 80%; |
|||
} |
|||
|
|||
div.page[data-name="home"] .card { |
|||
cursor: pointer; |
|||
} |
@ -0,0 +1,41 @@ |
|||
/* |
|||
This Source Code Form is subject to the terms of the Mozilla Public |
|||
License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|||
*/ |
|||
/* |
|||
Created on : Apr 3, 2020, 11:55:50 AM |
|||
Author : Skylar Ittner |
|||
*/ |
|||
|
|||
.only-tablet { |
|||
display: none; |
|||
} |
|||
|
|||
@media all and (min-width: 768px) { |
|||
.only-tablet { |
|||
display: inherit; |
|||
} |
|||
.no-tablet { |
|||
display: none; |
|||
} |
|||
|
|||
.elevation-tablet { |
|||
/* .elevation-3 */ |
|||
box-shadow: var(--f7-elevation-3)!important; |
|||
} |
|||
|
|||
.sheet-backdrop.backdrop-in { |
|||
visibility: hidden; |
|||
} |
|||
|
|||
.padding-bottom-tablet { |
|||
padding-bottom: 3rem !important; |
|||
} |
|||
} |
|||
|
|||
@media all and (min-width: 768px) and (min-height: 700px) { |
|||
.margin-top-tablet { |
|||
margin-top: 1rem; |
|||
} |
|||
} |
@ -0,0 +1,42 @@ |
|||
/* |
|||
This Source Code Form is subject to the terms of the Mozilla Public |
|||
License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|||
*/ |
|||
|
|||
|
|||
#web-barcode-ui { |
|||
position: absolute; |
|||
top: 0; |
|||
left: 0; |
|||
width: 100%; |
|||
height: 100%; |
|||
z-index: 999999; |
|||
display: block; |
|||
background: rgba(0,0,0,0.75); |
|||
} |
|||
|
|||
#web-barcode-ui.hidden { |
|||
display: none; |
|||
} |
|||
|
|||
#web-barcode-ui video#barcode-viewer { |
|||
max-width: calc(100% - 2em); |
|||
max-height: calc(100% - 2em); |
|||
position: fixed; |
|||
top: 50%; |
|||
left: 50%; |
|||
transform: translate(-50%, -50%); |
|||
border-radius: 1em; |
|||
} |
|||
|
|||
#web-barcode-ui .text { |
|||
position: absolute; |
|||
left: 0; |
|||
bottom: 0; |
|||
width: 100vw; |
|||
padding: 1em 5px 1em 5px; |
|||
color: white; |
|||
text-align: center; |
|||
background: rgba(0,0,0,0.5); |
|||
} |
@ -0,0 +1,60 @@ |
|||
@font-face { |
|||
font-family: 'Roboto'; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
src: |
|||
local('Roboto'), |
|||
local('Roboto-Regular'), |
|||
url('Roboto_400.woff') format('woff'), |
|||
url('Roboto_400.woff2') format('woff2'); |
|||
} |
|||
@font-face { |
|||
font-family: 'Roboto'; |
|||
font-style: italic; |
|||
font-weight: 400; |
|||
src: |
|||
local('Roboto Italic'), |
|||
local('Roboto-Italic'), |
|||
url('Roboto_400i.woff') format('woff'), |
|||
url('Roboto_400i.woff2') format('woff2'); |
|||
} |
|||
@font-face { |
|||
font-family: 'Roboto'; |
|||
font-style: normal; |
|||
font-weight: 500; |
|||
src: |
|||
local('Roboto Medium'), |
|||
local('Roboto-Medium'), |
|||
url('Roboto_500.woff') format('woff'), |
|||
url('Roboto_500.woff2') format('woff2'); |
|||
} |
|||
@font-face { |
|||
font-family: 'Roboto'; |
|||
font-style: italic; |
|||
font-weight: 500; |
|||
src: |
|||
local('Roboto Medium Italic'), |
|||
local('Roboto-MediumItalic'), |
|||
url('Roboto_500i.woff') format('woff'), |
|||
url('Roboto_500i.woff2') format('woff2'); |
|||
} |
|||
@font-face { |
|||
font-family: 'Roboto'; |
|||
font-style: normal; |
|||
font-weight: 700; |
|||
src: |
|||
local('Roboto Bold'), |
|||
local('Roboto-Bold'), |
|||
url('Roboto_700.woff') format('woff'), |
|||
url('Roboto_700.woff2') format('woff2'); |
|||
} |
|||
@font-face { |
|||
font-family: 'Roboto'; |
|||
font-style: italic; |
|||
font-weight: 700; |
|||
src: |
|||
local('Roboto Bold Italic'), |
|||
local('Roboto-BoldItalic'), |
|||
url('Roboto_700i.woff') format('woff'), |
|||
url('Roboto_700i.woff2') format('woff2'); |
|||
} |
@ -0,0 +1,31 @@ |
|||
<!DOCTYPE html> |
|||
<!-- |
|||
This Source Code Form is subject to the terms of the Mozilla Public |
|||
License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|||
--> |
|||
<html> |
|||
<head> |
|||
<title>Loading</title> |
|||
<meta charset="UTF-8"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
<style> |
|||
*,html,body { |
|||
background-color: #fff; |
|||
font-family: Roboto, Ubuntu, sans-serif; |
|||
text-align: center; |
|||
} |
|||
div { |
|||
margin-top: 1rem; |
|||
} |
|||
</style> |
|||
</head> |
|||
<body> |
|||
<div>Loading...</div> |
|||
|
|||
<script src="../settings.js"></script> |
|||
<script> |
|||
window.location.href = SETTINGS.loginurl; |
|||
</script> |
|||
</body> |
|||
</html> |
After Width: 1920 | Height: 1080 | Size: 161 KiB |
After Width: 1271 | Height: 1920 | Size: 133 KiB |
2
www/assets/images/companylogo.svg
File diff suppressed because it is too large
View File
After Width: 128 | Height: 128 | Size: 3.4 KiB |
After Width: 144 | Height: 144 | Size: 3.7 KiB |
After Width: 152 | Height: 152 | Size: 3.9 KiB |
After Width: 192 | Height: 192 | Size: 4.9 KiB |
After Width: 256 | Height: 256 | Size: 6.5 KiB |
After Width: 32 | Height: 32 | Size: 1018 B |
After Width: 512 | Height: 512 | Size: 13 KiB |
@ -0,0 +1,2 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<svg width="512" height="512" version="1.1" viewBox="0 0 135.47 135.47" xmlns="http://www.w3.org/2000/svg"><defs><clipPath id="a"><rect x="108.24" y="62.792" width="252.21" height="252.21" rx="14.778" ry="14.778" stroke-width=".49261"/></clipPath><style>.fa-secondary{opacity:.4}</style></defs><g transform="translate(0 -161.53)"><g transform="matrix(.53711 0 0 .53711 -58.136 127.81)" clip-path="url(#a)"><rect x="98.879" y="53.432" width="270.93" height="270.93" fill="#2196f3"/><g transform="translate(78.974 2.6652)" fill="#fff"><path d="m256.38 218.11h-15.948v-90.32c0-11.722-9.5424-21.252-21.264-21.252h-127.59c-11.722 0-21.264 9.5301-21.264 21.252v90.32h-15.948c-2.9371 0-5.3161 2.3776-5.3161 5.313v15.939c0 14.647 11.921 26.565 26.58 26.565h159.48c14.659 0 26.58-11.918 26.58-26.565v-15.939c0-2.9354-2.379-5.313-5.3161-5.313zm-175.43-90.32c0-5.8675 4.7612-10.626 10.632-10.626h127.59c5.871 0 10.632 4.7584 10.632 10.626v90.32h-50.792c-1.349 0-2.3324 1.0394-2.6315 2.3543-1.0732 4.7352-5.3095 8.2716-10.37 8.2716h-21.264c-5.0602 0-9.2965-3.5364-10.37-8.2716-0.29902-1.315-1.2825-2.3543-2.6315-2.3543h-50.792zm170.11 111.57c0 8.7896-7.1535 15.939-15.948 15.939h-159.48c-8.7948 0-15.948-7.1492-15.948-15.939v-10.626h64.707c2.1896 6.183 8.1004 10.626 15.035 10.626h31.897c6.9375 0 12.845-4.443 15.035-10.626h64.707z" stroke-width=".33216"/><g transform="matrix(.16278 0 0 .16278 113.7 126.83)"><path class="fa-secondary" d="m193.8 227.7-175.06 175.06a64 64 0 0 0 90.5 90.5l148.88-148.88a75.36 75.36 0 0 1 6.58-45.78zm-129.8 244.3a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm443.73-362.9a12 12 0 0 0-20.12-5.51l-74.36 74.41-67.88-11.31-11.31-67.93 74.36-74.36a12 12 0 0 0-5.66-20.16 143.92 143.92 0 0 0-136.58 37.93c-39.64 39.64-50.55 97.1-34.05 147.2l-4.43 4.43 70.9 70.9a74.25 74.25 0 0 1 85.4 13.9l7.21 7.21a141.74 141.74 0 0 0 78.61-40 143.94 143.94 0 0 0 37.91-136.71z" opacity=".4"/><path class="fa-primary" d="m501.1 395.7a37.36 37.36 0 0 1 0 52.7l-52.7 52.7a37.18 37.18 0 0 1-52.58 0.12l-117.22-117.22c-23.1-23.1-27.5-57.6-13.9-85.4l-106.6-106.6h-62.1l-96-128 64-64 128 96v62.1l106.6 106.6a74.25 74.25 0 0 1 85.4 13.9z"/></g></g></g></g></svg> |
@ -0,0 +1,159 @@ |
|||
/* This Source Code Form is subject to the terms of the Mozilla Public |
|||
* License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|||
|
|||
var $$ = Dom7; |
|||
|
|||
// Detect platform and run platform-specific setup code
|
|||
// for Cordova, NW.js, or the browser
|
|||
initPlatform(); |
|||
|
|||
var app = new Framework7({ |
|||
root: "#app", |
|||
name: "Netsyms PC Repair", |
|||
id: "com.netsyms.repairapp", |
|||
theme: "md", |
|||
card: { |
|||
swipeToClose: false |
|||
}, |
|||
popup: { |
|||
backdrop: true |
|||
}, |
|||
popover: { |
|||
backdrop: true |
|||
}, |
|||
init: true, |
|||
initOnDeviceReady: false, |
|||
routes: routes |
|||
}); |
|||
|
|||
var mainView = app.views.create('.view-main', { |
|||
url: "/", |
|||
animate: true |
|||
}); |
|||
|
|||
var router = mainView.router; |
|||
|
|||
function restartApplication() { |
|||
window.location = "index.html"; |
|||
} |
|||
|
|||
|
|||
router.on("pageInit", function (pagedata) { |
|||
pagedata.$el.find('script').each(function (el) { |
|||
if ($$(this).attr('src')) { |
|||
var s = document.createElement('script'); |
|||
s.src = $$(this).attr('src'); |
|||
$$('head').append(s); |
|||
} else { |
|||
eval($$(this).text()); |
|||
} |
|||
}); |
|||
// Stop text selection from popping a system toolbar even after changing pages
|
|||
if (window.getSelection) { |
|||
window.getSelection().removeAllRanges(); |
|||
} else if (document.selection) { |
|||
document.selection.empty(); |
|||
} |
|||
}); |
|||
|
|||
/** |
|||
* Perform back button behavior. |
|||
* Call this function whenever the equivalent to the Android back button is pressed. |
|||
* @returns {undefined} |
|||
*/ |
|||
function handleBackButton() { |
|||
// Close map sheet if it's open
|
|||
if ($(".sheet-modal").hasClass("modal-in")) { |
|||
app.sheet.close(); |
|||
} else if ($(".searchbar-enabled")[0]) { |
|||
app.searchbar.disable(); |
|||
} else if (scanningBarcode) { |
|||
return; |
|||
} else { |
|||
router.back({force: true, ignoreCache: true}); |
|||
} |
|||
// Stop text selection from popping a system toolbar even after changing pages
|
|||
if (window.getSelection) { |
|||
window.getSelection().removeAllRanges(); |
|||
} else if (document.selection) { |
|||
document.selection.empty(); |
|||
} |
|||
} |
|||
|
|||
$(document).keyup(function (e) { |
|||
if (e.key === "Escape" || e.keyCode == 27) { |
|||
handleBackButton(); |
|||
} |
|||
}); |
|||
|
|||
router.on("routeChange", function (newRoute) { |
|||
console.log("Info", "Navigating to ", newRoute.path); |
|||
}); |
|||
|
|||
function setAppTheme(theme) { |
|||
if (theme == "light") { |
|||
$("#app").removeClass("theme-dark"); |
|||
if (platform_type == "cordova" && cordova.platformId == 'android' && typeof StatusBar !== 'undefined') { |
|||
StatusBar.styleDefault(); |
|||
StatusBar.backgroundColorByHexString("#0D87F6"); |
|||
} |
|||
} else if (theme == "dark") { |
|||
$("#app").addClass("theme-dark"); |
|||
if (platform_type == "cordova" && cordova.platformId == 'android' && typeof StatusBar !== 'undefined') { |
|||
StatusBar.styleLightContent(); |
|||
StatusBar.backgroundColorByHexString("#000000"); |
|||
} |
|||
} |
|||
} |
|||
|
|||
function applyColorTheme() { |
|||
if (getStorage("apptheme") == "dark") { |
|||
setAppTheme("dark"); |
|||
} else if (getStorage("apptheme") == "light") { |
|||
setAppTheme("light"); |
|||
} else { |
|||
setAppTheme(appTheme); |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* Turn animations on or off. |
|||
* @param {boolean} on true for on, false for off. |
|||
* @returns {undefined} |
|||
*/ |
|||
function toggleAnimations(on) { |
|||
if (on) { |
|||
$("#app").removeClass("no-animation"); |
|||
} else { |
|||
$("#app").addClass("no-animation"); |
|||
} |
|||
mainView.params.animate = on; |
|||
} |
|||
|
|||
/** |
|||
* Turn animations on or off while considering user preferences. |
|||
* @param boolean enabled true to enable, false to disable, undefined to use animation=on/off setting. |
|||
* @returns {undefined} |
|||
*/ |
|||
function setAnimations(enabled) { |
|||
if (getStorage("animation") == null) { |
|||
setStorage("animation", "auto"); |
|||
} |
|||
if (typeof enabled !== "undefined") { |
|||
toggleAnimations(enabled == true); |
|||
return; |
|||
} |
|||
if (getStorage("animation") == "off") { |
|||
toggleAnimations(false); |
|||
} else if (getStorage("animation") == "on") { |
|||
toggleAnimations(true); |
|||
} |
|||
} |
|||
|
|||
applyColorTheme(); |
|||
setAnimations(); |
|||
|
|||
router.navigate("/home"); |
|||
|
|||
document.title = SETTINGS.branding.apptitle; |
@ -0,0 +1,269 @@ |
|||
/* |
|||
* This Source Code Form is subject to the terms of the Mozilla Public |
|||
* License, v. 2.0. If a copy of the MPL was not distributed with this |
|||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|||
*/ |
|||
|
|||
var platform_type = ""; |
|||
|
|||
var platform_theme = "md"; |
|||
|
|||
var app_version = "unknown"; |
|||
|
|||
var nw_tray = null; |
|||
|
|||
/** |
|||
* If true and animations are set to "auto", animations should be disabled. |
|||
* @type Boolean |
|||
*/ |
|||
var auto_disable_animations = false; |
|||
|
|||
var openBrowser = function (url) { |
|||
window.open(url); |
|||
} |
|||
|
|||
var openSystemBrowser = function (url) { |
|||
window.open(url); |
|||
} |
|||
|
|||
var scanBarcode = function (success, error) { |
|||
app.dialog.alert("You can't scan barcodes with this device.", "Sorry!"); |
|||
} |
|||
|
|||
var appTheme = "light"; |
|||
|
|||
var scanningBarcode = false; |
|||
|
|||
var getLocation = function (success, error) { |
|||
if ("geolocation" in navigator) { |
|||
navigator.geolocation.getCurrentPosition(function (position) { |
|||
success(position); |
|||
}, function (err) { |
|||
if (typeof error == "function") { |
|||
error(err.message); |
|||
} |
|||
}, { |
|||
enableHighAccuracy: true, |
|||
timeout: 5000, |
|||
maximumAge: 0 |
|||
}); |
|||
} else { |
|||
if (typeof error == "function") { |
|||
error("Location is unavailable."); |
|||
} |
|||
} |
|||
} |
|||
|
|||
function setupHTML5BarcodeScanner() { |
|||
$("body").append('<script src="node_modules/@zxing/library/umd/index.min.js"></script>'); |
|||
|
|||
scanBarcode = function (success, error) { |
|||
scanningBarcode = true; |
|||
$("#web-barcode-ui").removeClass("hidden"); |
|||
// Stolen from https://zxing-js.github.io/library/examples/multi-camera/
|
|||
const codeReader = new ZXing.BrowserMultiFormatReader(); |
|||
console.log("Info", 'ZXing code reader initialized'); |
|||
codeReader.getVideoInputDevices() |
|||
.then((videoInputDevices) => { |
|||
if (videoInputDevices.length == 0) { |
|||
codeReader.reset(); |
|||
$("#web-barcode-ui").addClass("hidden"); |
|||
error("A camera is required to scan barcodes."); |
|||
return; |
|||
} |
|||
selectedDeviceId = videoInputDevices[0].deviceId; |
|||
|
|||
codeReader.decodeFromInputVideoDeviceContinuously(selectedDeviceId, 'barcode-viewer', (result, err) => { |
|||
scanningBarcode = false; |
|||
if (result) { |
|||
codeReader.reset(); |
|||
$("#web-barcode-ui").addClass("hidden"); |
|||
success(result.text); |
|||
return; |
|||
} |
|||
if (err && !(err instanceof ZXing.NotFoundException)) { |
|||
console.error(err); |
|||
codeReader.reset(); |
|||
$("#web-barcode-ui").addClass("hidden"); |
|||
error(err); |
|||
return; |
|||
} |
|||
}); |
|||
}) |
|||
.catch((err) => { |
|||
scanningBarcode = false; |
|||
console.error(err); |
|||
}); |
|||
$("#web-barcode-ui").on("click", function () { |
|||
codeReader.reset(); |
|||
scanningBarcode = false; |
|||
$("#web-barcode-ui").addClass("hidden"); |
|||
}); |
|||
}; |
|||
} |
|||
|
|||
|
|||
function setupCordovaBarcodeScanner() { |
|||
scanBarcode = function (success, error) { |
|||
scanningBarcode = true; |
|||
cordova.plugins.barcodeScanner.scan( |
|||
function (result) { |
|||
scanningBarcode = false; |
|||
if (!result.cancelled) { |
|||
success(result.text); |
|||
} |
|||
}, |
|||
function (err) { |
|||
scanningBarcode = false; |
|||
if (typeof error == "function") { |
|||
error(err); |
|||
} |
|||
}, |
|||
{ |
|||
showTorchButton: true, |
|||
showFlipCameraButton: true |