From c0042d1505d15b4644e781e16da17a52c28e5f3b Mon Sep 17 00:00:00 2001
From: mohiit1502
Date: Tue, 8 May 2018 23:33:13 +0530
Subject: [PATCH] Merged UI and backend
---
._.bowerrc | Bin 0 -> 4096 bytes
._.gitignore | Bin 0 -> 4096 bytes
._.jshintrc | Bin 0 -> 4096 bytes
._.travis.yml | Bin 0 -> 4096 bytes
._LICENSE | Bin 0 -> 4096 bytes
._README.md | Bin 0 -> 4096 bytes
._bower.json | Bin 0 -> 4096 bytes
._karma.conf.js | Bin 0 -> 4096 bytes
._package.json | Bin 0 -> 4096 bytes
.bowerrc | 3 +
.gitignore | 113 ++++++++++++-
.jshintrc | 13 ++
.travis.yml | 14 ++
README.md | 297 +++++++++++++++++++++++++++++++++++
app/._app.css | Bin 0 -> 4096 bytes
app/._app.js | Bin 0 -> 4096 bytes
app/._index-async.html | Bin 0 -> 4096 bytes
app/._index.html | Bin 0 -> 4096 bytes
app/__init__.py | 8 +
app/api.py | 131 +++++++++++++++
app/app.css | 70 +++++++++
app/app.js | 12 ++
app/facebook/._facebook.html | Bin 0 -> 4096 bytes
app/facebook/._facebook.js | Bin 0 -> 4096 bytes
app/facebook/facebook.html | 59 +++++++
app/facebook/facebook.js | 75 +++++++++
app/index-async.html | 58 +++++++
app/index.html | 49 ++++++
app/models/__init__.py | 0
app/models/product.py | 45 ++++++
app/models/user.py | 112 +++++++++++++
app/static/admin.html | 32 ++++
app/static/blocks.css | 84 ++++++++++
app/templates/cart.html | 23 +++
app/templates/index.html | 64 ++++++++
app/templates/profile.html | 11 ++
app/templates/results.html | 93 +++++++++++
app/templates/users.html | 38 +++++
app/view1/._view1.html | Bin 0 -> 4096 bytes
app/view1/._view1.js | Bin 0 -> 4096 bytes
app/view1/._view1_test.js | Bin 0 -> 4096 bytes
app/view1/view1.html | 1 +
app/view1/view1.js | 14 ++
app/view1/view1_test.js | 16 ++
app/view2/._view2.html | Bin 0 -> 4096 bytes
app/view2/._view2.js | Bin 0 -> 4096 bytes
app/view2/._view2_test.js | Bin 0 -> 4096 bytes
app/view2/view2.html | 5 +
app/view2/view2.js | 14 ++
app/view2/view2_test.js | 16 ++
app/views.py | 7 +
bower.json | 15 ++
config.json | 7 +
karma.conf.js | 33 ++++
package.json | 34 ++++
run.py | 6 +
56 files changed, 1571 insertions(+), 1 deletion(-)
create mode 100644 ._.bowerrc
create mode 100644 ._.gitignore
create mode 100644 ._.jshintrc
create mode 100644 ._.travis.yml
create mode 100644 ._LICENSE
create mode 100644 ._README.md
create mode 100644 ._bower.json
create mode 100644 ._karma.conf.js
create mode 100644 ._package.json
create mode 100644 .bowerrc
create mode 100644 .jshintrc
create mode 100644 .travis.yml
create mode 100644 README.md
create mode 100644 app/._app.css
create mode 100644 app/._app.js
create mode 100644 app/._index-async.html
create mode 100644 app/._index.html
create mode 100644 app/__init__.py
create mode 100644 app/api.py
create mode 100644 app/app.css
create mode 100644 app/app.js
create mode 100644 app/facebook/._facebook.html
create mode 100644 app/facebook/._facebook.js
create mode 100644 app/facebook/facebook.html
create mode 100644 app/facebook/facebook.js
create mode 100644 app/index-async.html
create mode 100644 app/index.html
create mode 100644 app/models/__init__.py
create mode 100644 app/models/product.py
create mode 100644 app/models/user.py
create mode 100644 app/static/admin.html
create mode 100644 app/static/blocks.css
create mode 100644 app/templates/cart.html
create mode 100644 app/templates/index.html
create mode 100644 app/templates/profile.html
create mode 100644 app/templates/results.html
create mode 100644 app/templates/users.html
create mode 100644 app/view1/._view1.html
create mode 100644 app/view1/._view1.js
create mode 100644 app/view1/._view1_test.js
create mode 100644 app/view1/view1.html
create mode 100644 app/view1/view1.js
create mode 100644 app/view1/view1_test.js
create mode 100644 app/view2/._view2.html
create mode 100644 app/view2/._view2.js
create mode 100644 app/view2/._view2_test.js
create mode 100644 app/view2/view2.html
create mode 100644 app/view2/view2.js
create mode 100644 app/view2/view2_test.js
create mode 100644 app/views.py
create mode 100644 bower.json
create mode 100644 config.json
create mode 100644 karma.conf.js
create mode 100644 package.json
create mode 100644 run.py
diff --git a/._.bowerrc b/._.bowerrc
new file mode 100644
index 0000000000000000000000000000000000000000..fafd92fe096b2da23f24ab391a9197a02fe26763
GIT binary patch
literal 4096
zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;FvU8^
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;FvU8^
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;FvU8^
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;FvU8^
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB) /dev/null &
+ - npm run update-webdriver
+ - sleep 1 # give server time to start
+
+script:
+ - node_modules/.bin/karma start karma.conf.js --no-auto-watch --single-run --reporters=dots --browsers=Firefox
+ - node_modules/.bin/protractor e2e-tests/protractor.conf.js --browser=firefox
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..e7aece1
--- /dev/null
+++ b/README.md
@@ -0,0 +1,297 @@
+# angular-seed — the seed for AngularJS apps
+
+This project is an application skeleton for a typical [AngularJS](http://angularjs.org/) web app.
+You can use it to quickly bootstrap your angular webapp projects and dev environment for these
+projects.
+
+The seed contains a sample AngularJS application and is preconfigured to install the Angular
+framework and a bunch of development and testing tools for instant web development gratification.
+
+The seed app doesn't do much, just shows how to wire two controllers and views together.
+
+
+## Getting Started
+
+To get you started you can simply clone the angular-seed repository and install the dependencies:
+
+### Prerequisites
+
+You need git to clone the angular-seed repository. You can get git from
+[http://git-scm.com/](http://git-scm.com/).
+
+We also use a number of node.js tools to initialize and test angular-seed. You must have node.js and
+its package manager (npm) installed. You can get them from [http://nodejs.org/](http://nodejs.org/).
+
+### Clone angular-seed
+
+Clone the angular-seed repository using [git][git]:
+
+```
+git clone https://github.com/angular/angular-seed.git
+cd angular-seed
+```
+
+If you just want to start a new project without the angular-seed commit history then you can do:
+
+```bash
+git clone --depth=1 https://github.com/angular/angular-seed.git
+```
+
+The `depth=1` tells git to only pull down one commit worth of historical data.
+
+### Install Dependencies
+
+We have two kinds of dependencies in this project: tools and angular framework code. The tools help
+us manage and test the application.
+
+* We get the tools we depend upon via `npm`, the [node package manager][npm].
+* We get the angular code via `bower`, a [client-side code package manager][bower].
+
+We have preconfigured `npm` to automatically run `bower` so we can simply do:
+
+```
+npm install
+```
+
+Behind the scenes this will also call `bower install`. You should find that you have two new
+folders in your project.
+
+* `node_modules` - contains the npm packages for the tools we need
+* `app/bower_components` - contains the angular framework files
+
+*Note that the `bower_components` folder would normally be installed in the root folder but
+angular-seed changes this location through the `.bowerrc` file. Putting it in the app folder makes
+it easier to serve the files by a webserver.*
+
+### Run the Application
+
+We have preconfigured the project with a simple development web server. The simplest way to start
+this server is:
+
+```
+npm start
+```
+
+Now browse to the app at `http://localhost:8000/app/index.html`.
+
+
+
+## Directory Layout
+
+```
+app/ --> all of the source files for the application
+ app.css --> default stylesheet
+ components/ --> all app specific modules
+ version/ --> version related components
+ version.js --> version module declaration and basic "version" value service
+ version_test.js --> "version" value service tests
+ version-directive.js --> custom directive that returns the current app version
+ version-directive_test.js --> version directive tests
+ interpolate-filter.js --> custom interpolation filter
+ interpolate-filter_test.js --> interpolate filter tests
+ view1/ --> the view1 view template and logic
+ view1.html --> the partial template
+ view1.js --> the controller logic
+ view1_test.js --> tests of the controller
+ view2/ --> the view2 view template and logic
+ view2.html --> the partial template
+ view2.js --> the controller logic
+ view2_test.js --> tests of the controller
+ app.js --> main application module
+ index.html --> app layout file (the main html template file of the app)
+ index-async.html --> just like index.html, but loads js files asynchronously
+karma.conf.js --> config file for running unit tests with Karma
+e2e-tests/ --> end-to-end tests
+ protractor-conf.js --> Protractor config file
+ scenarios.js --> end-to-end scenarios to be run by Protractor
+```
+
+## Testing
+
+There are two kinds of tests in the angular-seed application: Unit tests and End to End tests.
+
+### Running Unit Tests
+
+The angular-seed app comes preconfigured with unit tests. These are written in
+[Jasmine][jasmine], which we run with the [Karma Test Runner][karma]. We provide a Karma
+configuration file to run them.
+
+* the configuration is found at `karma.conf.js`
+* the unit tests are found next to the code they are testing and are named as `..._test.js`.
+
+The easiest way to run the unit tests is to use the supplied npm script:
+
+```
+npm test
+```
+
+This script will start the Karma test runner to execute the unit tests. Moreover, Karma will sit and
+watch the source and test files for changes and then re-run the tests whenever any of them change.
+This is the recommended strategy; if your unit tests are being run every time you save a file then
+you receive instant feedback on any changes that break the expected code functionality.
+
+You can also ask Karma to do a single run of the tests and then exit. This is useful if you want to
+check that a particular version of the code is operating as expected. The project contains a
+predefined script to do this:
+
+```
+npm run test-single-run
+```
+
+
+### End to end testing
+
+The angular-seed app comes with end-to-end tests, again written in [Jasmine][jasmine]. These tests
+are run with the [Protractor][protractor] End-to-End test runner. It uses native events and has
+special features for Angular applications.
+
+* the configuration is found at `e2e-tests/protractor-conf.js`
+* the end-to-end tests are found in `e2e-tests/scenarios.js`
+
+Protractor simulates interaction with our web app and verifies that the application responds
+correctly. Therefore, our web server needs to be serving up the application, so that Protractor
+can interact with it.
+
+```
+npm start
+```
+
+In addition, since Protractor is built upon WebDriver we need to install this. The angular-seed
+project comes with a predefined script to do this:
+
+```
+npm run update-webdriver
+```
+
+This will download and install the latest version of the stand-alone WebDriver tool.
+
+Once you have ensured that the development web server hosting our application is up and running
+and WebDriver is updated, you can run the end-to-end tests using the supplied npm script:
+
+```
+npm run protractor
+```
+
+This script will execute the end-to-end tests against the application being hosted on the
+development server.
+
+
+## Updating Angular
+
+Previously we recommended that you merge in changes to angular-seed into your own fork of the project.
+Now that the angular framework library code and tools are acquired through package managers (npm and
+bower) you can use these tools instead to update the dependencies.
+
+You can update the tool dependencies by running:
+
+```
+npm update
+```
+
+This will find the latest versions that match the version ranges specified in the `package.json` file.
+
+You can update the Angular dependencies by running:
+
+```
+bower update
+```
+
+This will find the latest versions that match the version ranges specified in the `bower.json` file.
+
+
+## Loading Angular Asynchronously
+
+The angular-seed project supports loading the framework and application scripts asynchronously. The
+special `index-async.html` is designed to support this style of loading. For it to work you must
+inject a piece of Angular JavaScript into the HTML page. The project has a predefined script to help
+do this.
+
+```
+npm run update-index-async
+```
+
+This will copy the contents of the `angular-loader.js` library file into the `index-async.html` page.
+You can run this every time you update the version of Angular that you are using.
+
+
+## Serving the Application Files
+
+While angular is client-side-only technology and it's possible to create angular webapps that
+don't require a backend server at all, we recommend serving the project files using a local
+webserver during development to avoid issues with security restrictions (sandbox) in browsers. The
+sandbox implementation varies between browsers, but quite often prevents things like cookies, xhr,
+etc to function properly when an html page is opened via `file://` scheme instead of `http://`.
+
+
+### Running the App during Development
+
+The angular-seed project comes preconfigured with a local development webserver. It is a node.js
+tool called [http-server][http-server]. You can start this webserver with `npm start` but you may choose to
+install the tool globally:
+
+```
+sudo npm install -g http-server
+```
+
+Then you can start your own development web server to serve static files from a folder by
+running:
+
+```
+http-server -a localhost -p 8000
+```
+
+Alternatively, you can choose to configure your own webserver, such as apache or nginx. Just
+configure your server to serve the files under the `app/` directory.
+
+
+### Running the App in Production
+
+This really depends on how complex your app is and the overall infrastructure of your system, but
+the general rule is that all you need in production are all the files under the `app/` directory.
+Everything else should be omitted.
+
+Angular apps are really just a bunch of static html, css and js files that just need to be hosted
+somewhere they can be accessed by browsers.
+
+If your Angular app is talking to the backend server via xhr or other means, you need to figure
+out what is the best way to host the static files to comply with the same origin policy if
+applicable. Usually this is done by hosting the files by the backend server or through
+reverse-proxying the backend server(s) and webserver(s).
+
+
+## Continuous Integration
+
+### Travis CI
+
+[Travis CI][travis] is a continuous integration service, which can monitor GitHub for new commits
+to your repository and execute scripts such as building the app or running tests. The angular-seed
+project contains a Travis configuration file, `.travis.yml`, which will cause Travis to run your
+tests when you push to GitHub.
+
+You will need to enable the integration between Travis and GitHub. See the Travis website for more
+instruction on how to do this.
+
+### CloudBees
+
+CloudBees have provided a CI/deployment setup:
+
+
+
+
+If you run this, you will get a cloned version of this repo to start working on in a private git repo,
+along with a CI service (in Jenkins) hosted that will run unit and end to end tests in both Firefox and Chrome.
+
+
+## Contact
+
+For more information on AngularJS please check out http://angularjs.org/
+
+[git]: http://git-scm.com/
+[bower]: http://bower.io
+[npm]: https://www.npmjs.org/
+[node]: http://nodejs.org
+[protractor]: https://github.com/angular/protractor
+[jasmine]: http://jasmine.github.io
+[karma]: http://karma-runner.github.io
+[travis]: https://travis-ci.org/
+[http-server]: https://github.com/nodeapps/http-server
diff --git a/app/._app.css b/app/._app.css
new file mode 100644
index 0000000000000000000000000000000000000000..fafd92fe096b2da23f24ab391a9197a02fe26763
GIT binary patch
literal 4096
zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;FvU8^
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;FvU8^
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)', methods=['GET', 'POST'])
+def user_actions(action):
+ if action == 'login':
+ user = User(None, None, request.form.get('username'), request.form.get('password'))
+ is_valid = mongo_user.authenticate(user)
+ name = mongo_user.find_user_name_by_credentials(user)
+ if is_valid is not None and is_valid:
+ return render_template('profile.html', sign_up_msg="Welcome to Mini-Amazon", name = name if name is not None else "Anonymous", user_id=mongo_user.get_id_by_username(request.form.get('username')))
+ else:
+ return render_template("index.html", message="Invalid Username/Password")
+ elif action == 'signup':
+ user = dict()
+ user['name'] = request.form.get('name')
+ user['email'] = request.form.get('email')
+ user['username'] = request.form.get('username')
+ user['password'] = request.form.get('password')
+ does_user_exist = mongo_user.check_if_user_exists(request.form.get('username'))
+ if does_user_exist:
+ return render_template("index.html", user_exists_msg="Username exists, please enter a different user name!")
+ else:
+ mongo_user.save(user)
+ return Response(str({'status' : 'User Added!'}), mimetype='application/json', status=200)
+
+ else:
+ status = {
+ 'status' : 'Invalid Action'
+ }
+ return Response(str(status), mimetype='application/json', status=400)
+
+
+@app.route('/listUsers', methods=['GET'])
+def list_all_users():
+ matching_users = mongo_user.list_all_users()
+ matches = []
+ if matching_users is not None:
+ for user in matching_users:
+ matches.append(user)
+ return render_template('users.html', results=matches)
+
+
+@app.route('/addUsers', methods=['GET'])
+def add_users():
+ mongo_user.add_stuff()
+ return Response(str({'status': 'success'}), mimetype='application/json', status=200)
+
+@app.route('/api/cart', methods=['GET','POST'])
+def cart():
+ if request.args.get('op_type') == 'getcart':
+ userId = request.args.get('user_id')
+ matched_ids = mongo_user.get_usercart_by_userid(userId)
+ matches = mongo_product.get_product_list_from_product_ids(matched_ids)
+ return render_template('cart.html', user_id=userId, results=matches)
+ elif request.args.get('op_type') == 'addToCart':
+ pass
+ else:
+ user_id = request.args.get('user_id',None)
+ product_id = request.args.get('product_id', None)
+
+ user= mongo_user.get_by_id(user_id)
+ success = mongo_user.add_to_cart(user_id,product_id)
+ user_data = mongo_user.get_by_id(user_id)
+
+ return render_template('profile.html',name=user_data['name'],user_id=user_id)
+
+
+# @app.route('/admin.html')
+# def admin_tasks():
+# return render_template('../../static/admin.html')
diff --git a/app/app.css b/app/app.css
new file mode 100644
index 0000000..94edafe
--- /dev/null
+++ b/app/app.css
@@ -0,0 +1,70 @@
+/* app css stylesheet */
+
+.menu {
+ list-style: none;
+ border-bottom: 0.1em solid black;
+ margin-bottom: 2em;
+ padding: 0 0 0.5em;
+}
+
+.menu:before {
+ content: "[";
+}
+
+.menu:after {
+ content: "]";
+}
+
+.menu > li {
+ display: inline;
+}
+
+.menu > li:before {
+ content: "|";
+ padding-right: 0.3em;
+}
+
+.menu > li:nth-child(1):before {
+ content: "";
+ padding: 0;
+}
+
+
+
+.stbody
+{
+min-height:70px;
+
+}
+.stbody
+{
+min-height:70px;
+margin-bottom:10px;
+border-bottom:dashed 1px #cc0000;
+}
+.stimg
+{
+float:left;
+height:50px;
+width:50px;
+border:solid 1px #dedede;
+padding:5px;
+}
+.sttext
+{
+margin-left:70px;
+
+min-height:50px;
+word-wrap:break-word;
+overflow:hidden;
+padding:5px;
+display:block;
+font-family:'Georgia', Times New Roman, Times, serif
+}
+.sttime
+{
+font-size:11px;
+color:#999;
+font-family:Arial, Helvetica, sans-serif;
+margin-top:5px;
+}
\ No newline at end of file
diff --git a/app/app.js b/app/app.js
new file mode 100644
index 0000000..84692d1
--- /dev/null
+++ b/app/app.js
@@ -0,0 +1,12 @@
+'use strict';
+
+// Declare app level module which depends on views, and components
+angular.module('ngSocial', [
+ 'ngRoute',
+ 'ngSocial.view1',
+ 'ngSocial.view2',
+ 'ngSocial.facebook'
+]).
+config(['$routeProvider', function($routeProvider) {
+ $routeProvider.otherwise({redirectTo: '/facebook'});
+}]);
diff --git a/app/facebook/._facebook.html b/app/facebook/._facebook.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c8ce97dafef6bbe1c137c4d7314f130b6d1afe3
GIT binary patch
literal 4096
zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)
+
+
+
\ No newline at end of file
diff --git a/app/templates/profile.html b/app/templates/profile.html
new file mode 100644
index 0000000..22da9f1
--- /dev/null
+++ b/app/templates/profile.html
@@ -0,0 +1,11 @@
+
{{ sign_up_msg }}, {{ name }}
+
+You may perform a product search below:
+
+
+
\ No newline at end of file
diff --git a/app/templates/results.html b/app/templates/results.html
new file mode 100644
index 0000000..ca06e72
--- /dev/null
+++ b/app/templates/results.html
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+ Search results
+
+
+
+
+
+
+
+
+
+
Found {{ results | length }} results for {{ query }}:
+
+
+ {% for result in results %}
+
+
+
+
+
+
+ {{result.name}}
+
+
+
+
+
+
+
+
+
+
{{result.name}}
+
+
+
+
{{result.description}}
+
+
+
+
{{result.price}}
+
+
+
+
+
+
+
+
+
+
+ {% endfor %}
+
+
+
\ No newline at end of file
diff --git a/app/templates/users.html b/app/templates/users.html
new file mode 100644
index 0000000..e1ee92a
--- /dev/null
+++ b/app/templates/users.html
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+ Users Manager
+
+
+
+
Users {{ results | length }} displayed:
+
+
+ {% for result in results %}
+
+
{{result.name}}
+
+
+ {% endfor %}
+
+
+
\ No newline at end of file
diff --git a/app/view1/._view1.html b/app/view1/._view1.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c8ce97dafef6bbe1c137c4d7314f130b6d1afe3
GIT binary patch
literal 4096
zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)This is the partial for view 1.
diff --git a/app/view1/view1.js b/app/view1/view1.js
new file mode 100644
index 0000000..dbf15ef
--- /dev/null
+++ b/app/view1/view1.js
@@ -0,0 +1,14 @@
+'use strict';
+
+angular.module('ngSocial.view1', ['ngRoute'])
+
+.config(['$routeProvider', function($routeProvider) {
+ $routeProvider.when('/view1', {
+ templateUrl: 'view1/view1.html',
+ controller: 'View1Ctrl'
+ });
+}])
+
+.controller('View1Ctrl', [function() {
+
+}]);
\ No newline at end of file
diff --git a/app/view1/view1_test.js b/app/view1/view1_test.js
new file mode 100644
index 0000000..14ba79b
--- /dev/null
+++ b/app/view1/view1_test.js
@@ -0,0 +1,16 @@
+'use strict';
+
+describe('myApp.view1 module', function() {
+
+ beforeEach(module('myApp.view1'));
+
+ describe('view1 controller', function(){
+
+ it('should ....', inject(function($controller) {
+ //spec body
+ var view1Ctrl = $controller('View1Ctrl');
+ expect(view1Ctrl).toBeDefined();
+ }));
+
+ });
+});
\ No newline at end of file
diff --git a/app/view2/._view2.html b/app/view2/._view2.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c8ce97dafef6bbe1c137c4d7314f130b6d1afe3
GIT binary patch
literal 4096
zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103vvYvJF
zKST$^44`s#G%bukK2%&ZIX_n~v7jI)Rj;r#u_!UGBr`9S!N9=4$lBD@!Z^*;Fx5K9
zF({_O$iTItq$n}DB)This is the partial for view 2.
+
+ Showing of 'interpolate' filter:
+ {{ 'Current version is v%VERSION%.' | interpolate }}
+