TN: Copy Andrew work over to the landing folder. Integrate Angular to

here
This commit is contained in:
Nguyen Anh Tuan, Tony 2015-01-27 06:57:12 +08:00
parent b17f0d165a
commit 2a49046ff0
10 changed files with 1021 additions and 116 deletions

View file

@ -1,93 +1,93 @@
/*
* Copyright 2002-2013 the original author or authors.
*
* Licensed 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.
*/
package org.springframework.samples.petclinic.util;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.springframework.jmx.export.annotation.ManagedAttribute;
import org.springframework.jmx.export.annotation.ManagedOperation;
import org.springframework.jmx.export.annotation.ManagedResource;
import org.springframework.util.StopWatch;
/**
* Simple aspect that monitors call count and call invocation time. It uses JMX annotations and therefore can be
* monitored using any JMX console such as the jConsole
*
* @author Rob Harrop
* @author Juergen Hoeller
* @author Michael Isvy
* @since 2.5
*/
@ManagedResource("petclinic:type=CallMonitor")
@Aspect
public class CallMonitoringAspect {
private boolean enabled = true;
private int callCount = 0;
private long accumulatedCallTime = 0;
@ManagedAttribute
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
@ManagedAttribute
public boolean isEnabled() {
return enabled;
}
@ManagedOperation
public void reset() {
this.callCount = 0;
this.accumulatedCallTime = 0;
}
@ManagedAttribute
public int getCallCount() {
return callCount;
}
@ManagedAttribute
public long getCallTime() {
return (this.callCount > 0 ? this.accumulatedCallTime / this.callCount : 0);
}
@Around("within(@org.springframework.stereotype.Repository *)")
public Object invoke(ProceedingJoinPoint joinPoint) throws Throwable {
if (this.enabled) {
StopWatch sw = new StopWatch(joinPoint.toShortString());
sw.start("invoke");
try {
return joinPoint.proceed();
} finally {
sw.stop();
synchronized (this) {
this.callCount++;
this.accumulatedCallTime += sw.getTotalTimeMillis();
}
}
} else {
return joinPoint.proceed();
}
}
}
/*
* Copyright 2002-2013 the original author or authors.
*
* Licensed 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.
*/
package org.springframework.samples.petclinic.util;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.springframework.jmx.export.annotation.ManagedAttribute;
import org.springframework.jmx.export.annotation.ManagedOperation;
import org.springframework.jmx.export.annotation.ManagedResource;
import org.springframework.util.StopWatch;
/**
* Simple aspect that monitors call count and call invocation time. It uses JMX annotations and therefore can be
* monitored using any JMX console such as the jConsole
*
* @author Rob Harrop
* @author Juergen Hoeller
* @author Michael Isvy
* @since 2.5
*/
//@ManagedResource("petclinic:type=CallMonitor")
@Aspect
public class CallMonitoringAspect {
private boolean enabled = true;
private int callCount = 0;
private long accumulatedCallTime = 0;
@ManagedAttribute
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
@ManagedAttribute
public boolean isEnabled() {
return enabled;
}
@ManagedOperation
public void reset() {
this.callCount = 0;
this.accumulatedCallTime = 0;
}
@ManagedAttribute
public int getCallCount() {
return callCount;
}
@ManagedAttribute
public long getCallTime() {
return (this.callCount > 0 ? this.accumulatedCallTime / this.callCount : 0);
}
@Around("within(@org.springframework.stereotype.Repository *)")
public Object invoke(ProceedingJoinPoint joinPoint) throws Throwable {
if (this.enabled) {
StopWatch sw = new StopWatch(joinPoint.toShortString());
sw.start("invoke");
try {
return joinPoint.proceed();
} finally {
sw.stop();
synchronized (this) {
this.callCount++;
this.accumulatedCallTime += sw.getTotalTimeMillis();
}
}
} else {
return joinPoint.proceed();
}
}
}

View file

@ -1,23 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
<resetJUL>true</resetJUL>
</contextListener>
<!-- To enable JMX Management -->
<jmxConfigurator/>
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%-5level %logger{0} - %msg%n</pattern>
</encoder>
</appender>
<!--<logger name="org.hibernate" level="debug"/> -->
<logger name="org.springframework.samples.petclinic" level="debug"/>
<root level="info">
<appender-ref ref="console"/>
</root>
</configuration>
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
<resetJUL>true</resetJUL>
</contextListener>
<!-- To enable JMX Management -->
<jmxConfigurator/>
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%-5level %logger{0} - %msg%n</pattern>
</encoder>
</appender>
<!--<logger name="org.hibernate" level="debug"/> -->
<logger name="org.springframework.samples.petclinic" level="debug"/>
<root level="debug">
<appender-ref ref="console"/>
</root>
</configuration>

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View file

@ -0,0 +1,280 @@
<!DOCTYPE html>
<html class=no-js>
<head>
<meta charset=utf-8>
<title>Pet Clinic - Discover Pet Owners on your Neigborhood</title>
<meta name=description content="">
<meta name=viewport content="width=device-width">
<link rel="shortcut icon" href=/58f9eaa9.favicon.ico>
<!-- Place favicon.ico and apple-touch-icon.png in the root directory -->
<link rel=stylesheet href=styles/d588b099.main.css>
<body>
<!--[if lt IE 10]>
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
<![endif]-->
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class=container>
<div class=navbar-header>
<button type=button class="navbar-toggle collapsed"
data-toggle=collapse data-target=#navbar aria-expanded=false
aria-controls=navbar>
<span class=sr-only>Toggle navigation</span> <span class=icon-bar></span>
<span class=icon-bar></span> <span class=icon-bar></span>
</button>
<a class=navbar-brand href="/">Pet Clinic</a>
</div>
<div id=navbar class="navbar-collapse collapse pull-right">
<ul class="nav navbar-nav">
<li><a href=discover.html class=active>Discover</a></li>
<li><a href=#vet>Veterinarians</a></li>
<li><a href=#about>About</a></li>
</ul>
</div>
<!--/.navbar-collapse -->
</div>
</nav>
<!-- Main jumbotron for a primary marketing message or call to action -->
<div class="jumbotron jumbotron-tertiary">
<div class=container>
<div class=jumbotron-headline>
<div class=jumbotron-headline-cell>
<h1>Discover Pet Owners</h1>
<p>Helping you discover pet owners near you and connect.</p>
<div class=row>
<div class="col-md-6 col-md-offset-2">
<input class="form-control input-lg" placeholder=.col-md-8>
</div>
<div class=col-md-2>
<button type=submit class="btn btn-primary btn-lg btn-block">Discover</button>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Featured veterinarians -->
<section id=veterianarians class=sections>
<div class=container>
<div class=nav-tabs-filter>
<a href=#add_owner role=button class="btn btn-primary pull-right">Register
Now - It's Free!</a>
<ul class="nav nav-tabs">
<li role=presentation class=active><a href=#>Newest</a></li>
<li role=presentation><a href=#>Popular</a></li>
<li role=presentation class="dropdown open"><a
class=dropdown-toggle data-toggle=dropdown href=# role=button
aria-expanded=false> Dropdown <span class=caret></span>
</a>
<ul class=dropdown-menu role=menu>
<li><a href=#>McFarland</a></li>
<li><a href=#>Sun Prairie</a></li>
<li><a href=#>Madison</a></li>
<li><a href=#>New York</a></li>
<li><a href=#>Madison</a></li>
</ul></li>
</ul>
</div>
<div class=row>
<div class=col-md-3>
<div class=thumbnail>
<a href=show.html><a href=show.html><img
src=http://placehold.it/600x600 alt="Generic placeholder image"></a></a>
<div class=caption>
<a href=show.html><a href=show.html><h3>Thumbnail
label</h3></a></a>
<p>Even the all-powerful Pointing has no control about the
blind texts it is an almost unorthographic life One day however
a small line of blind text by the name of Lorem Ipsum.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<a href=show.html><a href=show.html><img
src=http://placehold.it/600x600 alt="Generic placeholder image"></a></a>
<div class=caption>
<a href=show.html><a href=show.html><h3>Thumbnail
label</h3></a></a>
<p>Mountains, she had a last view back on the skyline of her
hometown Bookmarksgrove, the headline of Alphabet Village and
the subline of her own road, the Line Lane.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<a href=show.html><img src=http://placehold.it/600x600
alt="Generic placeholder image"></a>
<div class=caption>
<a href=show.html><h3>Thumbnail label</h3></a>
<p>Even the all-powerful Pointing has no control about the
blind texts it is an almost unorthographic life One day however
a small line of blind text by the name of Lorem Ipsum.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<a href=show.html><img src=http://placehold.it/600x600
alt="Generic placeholder image"></a>
<div class=caption>
<a href=show.html><h3>Thumbnail label</h3></a>
<p>Mountains, she had a last view back on the skyline of her
hometown Bookmarksgrove, the headline of Alphabet Village and
the subline of her own road, the Line Lane.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<a href=show.html><img src=http://placehold.it/600x600
alt="Generic placeholder image"></a>
<div class=caption>
<a href=show.html><h3>Thumbnail label</h3></a>
<p>Even the all-powerful Pointing has no control about the
blind texts it is an almost unorthographic life One day however
a small line of blind text by the name of Lorem Ipsum.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<a href=show.html><img src=http://placehold.it/600x600
alt="Generic placeholder image"></a>
<div class=caption>
<a href=show.html><h3>Thumbnail label</h3></a>
<p>Mountains, she had a last view back on the skyline of her
hometown Bookmarksgrove, the headline of Alphabet Village and
the subline of her own road, the Line Lane.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<a href=show.html><img src=http://placehold.it/600x600
alt="Generic placeholder image"></a>
<div class=caption>
<a href=show.html><h3>Thumbnail label</h3></a>
<p>Even the all-powerful Pointing has no control about the
blind texts it is an almost unorthographic life One day however
a small line of blind text by the name of Lorem Ipsum.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<a href=show.html><img src=http://placehold.it/600x600
alt="Generic placeholder image"></a>
<div class=caption>
<a href=show.html><h3>Thumbnail label</h3></a>
<p>Mountains, she had a last view back on the skyline of her
hometown Bookmarksgrove, the headline of Alphabet Village and
the subline of her own road, the Line Lane.</p>
</div>
</div>
</div>
</div>
<div class=row>
<div class="col-md-4 col-md-offset-4">
<p>
<a class="btn btn-primary btn-lg btn-block" href=#>Show More »</a>
</p>
</div>
</div>
</div>
</section>
<!-- Make an appointment call to action -->
<section id=appointment class="jumbotron jumbotron-secondary">
<div class=container>
<div class=jumbotron-headline>
<div class=jumbotron-headline-cell>
<h2>
Over 40,000 pet owners trust us. Register now. It's <strong>Free</strong>
forever!
</h2>
<p>Use it as a starting point to create something more unique.</p>
<form class=form-inline>
<div class=form-group>
<label class=sr-only for=clientName>Your Name</label> <input
class="form-control input-lg" id=clientName
placeholder="Your name">
</div>
<div class=form-group>
<label class=sr-only for=emailAddress>Email Address</label> <input
type=email class="form-control input-lg" id=emailAddress
placeholder="Your email">
</div>
<div class=form-group>
<label class=sr-only for=clientNumber>Contact Number</label> <input
class="form-control input-lg" id=clientNumber
placeholder="Your contact number">
</div>
<button type=submit class="btn btn-primary btn-lg">Get
Started - It's Free!</button>
</form>
</div>
</div>
</div>
</section>
<!-- Contact details -->
<section id=add_owner class="sections sections-narrow">
<div class=container>
<!-- Three columns of text below the carousel -->
<div class=row>
<div class=col-lg-4>
<h3>Business Hours</h3>
<p>Donec sed odio dui. Etiam porta sem malesuada magna mollis
euismod. Nullam id dolor id nibh ultricies vehicula ut id elit.
Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna.</p>
</div>
<!-- /.col-lg-4 -->
<div class=col-lg-4>
<h3>Our Location</h3>
<p>Duis mollis, est non commodo luctus, nisi erat porttitor
ligula, eget lacinia odio sem nec elit. Cras mattis consectetur
purus sit amet fermentum. Fusce dapibus, tellus ac cursus commodo,
tortor mauris condimentum nibh.</p>
</div>
<!-- /.col-lg-4 -->
<div class=col-lg-4>
<h3>Questions or comments</h3>
<p>Cras mattis consectetur purus sit amet fermentum.</p>
<p>
<a href=mailto:youremail@yourdomain.com type=submit
class="btn btn-default">Drop us a line</a>
</p>
</div>
<!-- /.col-lg-4 -->
</div>
<!-- /.row -->
</div>
</section>
<!-- Footer -->
<footer class=footer>
<div class=container>
<p class=pull-right>
Tell your friends: <a href=#>Facebook</a>, <a href=#>Twitter</a>, <a
href=#>Google+</a>
</p>
<p>© 2015 Pet Clinic, A Spring Framework Demonstration</p>
</div>
</footer>
<script src=scripts/5987e2ba.vendor.js></script>
<!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
<script>
(function(b, o, i, l, e, r) {
b.GoogleAnalyticsObject = l;
b[l] || (b[l] = function() {
(b[l].q = b[l].q || []).push(arguments)
});
b[l].l = +new Date;
e = o.createElement(i);
r = o.getElementsByTagName(i)[0];
e.src = '//www.google-analytics.com/analytics.js';
r.parentNode.insertBefore(e, r)
}(window, document, 'script', 'ga'));
ga('create', 'UA-XXXXX-X');
ga('send', 'pageview');
</script>
<script src=scripts/b6c3df09.main.js></script>

View file

@ -0,0 +1,398 @@
<!DOCTYPE html>
<html class=no-js>
<head>
<meta charset=utf-8>
<title>Pet Clinic - Home</title>
<meta name=description content="">
<meta name=viewport content="width=device-width">
<link rel="shortcut icon" href=/58f9eaa9.favicon.ico>
<!-- Place favicon.ico and apple-touch-icon.png in the root directory -->
<link rel=stylesheet href=styles/d588b099.main.css>
<body>
<!--[if lt IE 10]>
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
<![endif]-->
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class=container>
<div class=navbar-header>
<button type=button class="navbar-toggle collapsed"
data-toggle=collapse data-target=#navbar aria-expanded=false
aria-controls=navbar>
<span class=sr-only>Toggle navigation</span> <span class=icon-bar></span>
<span class=icon-bar></span> <span class=icon-bar></span>
</button>
<a class=navbar-brand href="/">Pet Clinic</a>
</div>
<div id=navbar class="navbar-collapse collapse pull-right">
<ul class="nav navbar-nav">
<li><a href=discover.html>Discover</a></li>
<li><a href=#vet>Veterinarians</a></li>
<li><a href=#about>About</a></li>
</ul>
</div>
<!--/.navbar-collapse -->
</div>
</nav>
<!-- Main jumbotron for a primary marketing message or call to action -->
<div class=jumbotron>
<div class=container>
<div class=jumbotron-headline>
<div class=jumbotron-headline-cell>
<h1>
Pet Clinic <br> A Spring Framework Demonstration
</h1>
<p>A place to see your neighborhood pet owners</p>
<p>
<a class="btn btn-primary btn-lg" href=#add_owner role=button>Get
started - It's Free!</a>
</p>
</div>
</div>
</div>
</div>
<!-- Featured veterinarians -->
<section id=veterianarians class=sections>
<div class=container>
<div class=row>
<div class="col-md-8 col-md-offset-2">
<div class=text-center>
<h3 class=section-heading>Our Veterinarians</h3>
<p class=section-desc>A small river named Duden flows by their
place and supplies it with the necessary regelialia. It is a
paradisematic country, in which roasted parts of sentences fly
into your mouth.</p>
</div>
</div>
</div>
<div class=row>
<div class=col-md-6>
<div class=thumbnail>
<img src=http://placehold.it/600x345
alt="Generic placeholder image">
<div class=caption>
<h3>Thumbnail label</h3>
<p>Far far away, behind the word mountains, far from the
countries Vokalia and Consonantia, there live the blind texts.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<img src=http://placehold.it/600x600
alt="Generic placeholder image">
<div class=caption>
<h3>Thumbnail label</h3>
<p>Even the all-powerful Pointing has no control about the
blind texts it is an almost unorthographic life One day however
a small line of blind text by the name of Lorem Ipsum.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<img src=http://placehold.it/600x600
alt="Generic placeholder image">
<div class=caption>
<h3>Thumbnail label</h3>
<p>Mountains, she had a last view back on the skyline of her
hometown Bookmarksgrove, the headline of Alphabet Village and
the subline of her own road, the Line Lane.</p>
</div>
</div>
</div>
</div>
<!-- /row -->
<div class=row>
<div class=col-md-3>
<div class=thumbnail>
<img src=http://placehold.it/600x600
alt="Generic placeholder image">
<div class=caption>
<h3>Thumbnail label</h3>
<p>Even the all-powerful Pointing has no control about the
blind texts it is an almost unorthographic life One day however
a small line of blind text by the name of Lorem Ipsum.</p>
</div>
</div>
</div>
<div class=col-md-3>
<div class=thumbnail>
<img src=http://placehold.it/600x600
alt="Generic placeholder image">
<div class=caption>
<h3>Thumbnail label</h3>
<p>Mountains, she had a last view back on the skyline of her
hometown Bookmarksgrove, the headline of Alphabet Village and
the subline of her own road, the Line Lane.</p>
</div>
</div>
</div>
<div class=col-md-6>
<div class=thumbnail>
<img src=http://placehold.it/600x345
alt="Generic placeholder image">
<div class=caption>
<h3>Thumbnail label</h3>
<p>The Big Oxmox advised her not to do so, because there were
thousands of bad Commas, wild Question Marks and devious
Semikoli.</p>
</div>
</div>
</div>
</div>
<!-- /row -->
<div class=row>
<div class="col-md-4 col-md-offset-4">
<p>
<a class="btn btn-primary btn-lg btn-block" href=/veterinarians>View
More »</a>
</p>
</div>
</div>
</div>
</section>
<!-- Services 1 section -->
<section id=services class=sections>
<div class=container>
<div class=row>
<div class=col-md-6>
<img class=img-thumbnail src=http://placehold.it/560x250
alt="Generic placeholder image">
</div>
<div class=col-md-6>
<h3 class=section-heading>Services One</h3>
<p class=section-desc>A small river named Duden flows by their
place and supplies it with the necessary regelialia. It is a
paradisematic country, in which roasted parts of sentences fly
into your mouth.</p>
<p>
<a class="btn btn-primary" href=/business>Learn more »</a>
</p>
</div>
</div>
</div>
</section>
<!-- Services 2 section -->
<section id=services2 class=sections>
<div class=container>
<div class=row>
<div class=col-md-6>
<h3 class=section-heading>Services Two</h3>
<p class=section-desc>A small river named Duden flows by their
place and supplies it with the necessary regelialia. It is a
paradisematic country, in which roasted parts of sentences fly
into your mouth.</p>
<p>
<a class="btn btn-primary" href=/business>Learn more »</a>
</p>
</div>
<div class=col-md-6>
<img class=img-thumbnail src=http://placehold.it/560x250
alt="Generic placeholder image">
</div>
</div>
</div>
</section>
<!-- Services 3 section -->
<section id=services3 class=sections>
<div class=container>
<div class=row>
<div class=col-md-6>
<img class=img-thumbnail src=http://placehold.it/560x250
alt="Generic placeholder image">
</div>
<div class=col-md-6>
<h3 class=section-heading>Services Three</h3>
<p class=section-desc>A small river named Duden flows by their
place and supplies it with the necessary regelialia. It is a
paradisematic country, in which roasted parts of sentences fly
into your mouth.</p>
<p>
<a class="btn btn-primary" href=/business>Learn more »</a>
</p>
</div>
</div>
</div>
</section>
<!-- Testimonials -->
<section id=testimonials class=sections>
<div class=container>
<div class=row>
<div class="col-md-8 col-md-offset-2">
<div class=text-center>
<h3 class=section-heading>What our customers are saying.</h3>
<p class=section-desc>Even the all-powerful Pointing has no
control about the blind texts it is an almost unorthographic life
One day however a small line of blind text by the name of Lorem
Ipsum decided to leave for the far World of Grammar.</p>
</div>
</div>
</div>
<div class=row>
<div class="col-lg-4 text-center">
<img class=img-circle src=http://placehold.it/140x140
alt="Generic placeholder image">
<h4>Client One</h4>
<p>Donec sed odio dui. Etiam porta sem malesuada magna mollis
euismod. Nullam id dolor id nibh ultricies vehicula ut id elit.
Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna.</p>
</div>
<!-- /.col-lg-4 -->
<div class="col-lg-4 text-center">
<img class=img-circle src=http://placehold.it/140x140
alt="Generic placeholder image">
<h4>Client Two</h4>
<p>Duis mollis, est non commodo luctus, nisi erat porttitor
ligula, eget lacinia odio sem nec elit. Cras mattis consectetur
purus sit amet fermentum. Fusce dapibus, tellus ac cursus commodo,
tortor mauris condimentum nibh.</p>
</div>
<!-- /.col-lg-4 -->
<div class="col-lg-4 text-center">
<img class=img-circle src=http://placehold.it/140x140
alt="Generic placeholder image">
<h4>Client Three</h4>
<p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis
in, egestas eget quam. Vestibulum id ligula porta felis euismod
semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris
condimentum nibh, ut fermentum massa justo sit amet risus.</p>
</div>
<!-- /.col-lg-4 -->
</div>
</div>
</section>
<!-- Client logos -->
<section id=companies class="sections sections-narrow">
<div class="container text-center">
<div class=row>
<div class="col-md-8 col-md-offset-2">
<div class=text-center>
<p class=section-desc>Trusted by some of the world's smartest
companies</p>
</div>
</div>
</div>
<div class=row>
<div class=col-lg-2>
<img src=http://placehold.it/100x40
alt="Companies placeholder image">
</div>
<div class=col-lg-2>
<img src=http://placehold.it/100x40
alt="Companies placeholder image">
</div>
<div class=col-lg-2>
<img src=http://placehold.it/100x40
alt="Companies placeholder image">
</div>
<div class=col-lg-2>
<img src=http://placehold.it/100x40
alt="Companies placeholder image">
</div>
<div class=col-lg-2>
<img src=http://placehold.it/100x40
alt="Companies placeholder image">
</div>
<div class=col-lg-2>
<img src=http://placehold.it/100x40
alt="Companies placeholder image">
</div>
</div>
</div>
</section>
<!-- Make an appointment call to action -->
<section id=appointment class="jumbotron jumbotron-secondary">
<div class=container>
<div class=jumbotron-headline>
<div class=jumbotron-headline-cell>
<h2>
Over 40,000 pet owners trust us. Register now. It's <strong>Free</strong>
forever!
</h2>
<p>Use it as a starting point to create something more unique.</p>
<form class=form-inline>
<div class=form-group>
<label class=sr-only for=clientName>Your Name</label> <input
class="form-control input-lg" id=clientName
placeholder="Your name">
</div>
<div class=form-group>
<label class=sr-only for=emailAddress>Email Address</label> <input
type=email class="form-control input-lg" id=emailAddress
placeholder="Your email">
</div>
<div class=form-group>
<label class=sr-only for=clientNumber>Contact Number</label> <input
class="form-control input-lg" id=clientNumber
placeholder="Your contact number">
</div>
<button type=submit class="btn btn-primary btn-lg">Get
Started - It's Free!</button>
</form>
</div>
</div>
</div>
</section>
<!-- Add Owner / Register -->
<section id=add_owner class="sections sections-narrow">
<div class=container>
<!-- Three columns of text below the carousel -->
<div class=row>
<div class=col-lg-4>
<h3>Business Hours</h3>
<p>Donec sed odio dui. Etiam porta sem malesuada magna mollis
euismod. Nullam id dolor id nibh ultricies vehicula ut id elit.
Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna.</p>
</div>
<!-- /.col-lg-4 -->
<div class=col-lg-4>
<h3>Our Location</h3>
<p>Duis mollis, est non commodo luctus, nisi erat porttitor
ligula, eget lacinia odio sem nec elit. Cras mattis consectetur
purus sit amet fermentum. Fusce dapibus, tellus ac cursus commodo,
tortor mauris condimentum nibh.</p>
</div>
<!-- /.col-lg-4 -->
<div class=col-lg-4>
<h3>Questions or comments</h3>
<p>Cras mattis consectetur purus sit amet fermentum.</p>
<p>
<a href=mailto:youremail@yourdomain.com type=submit
class="btn btn-default">Drop us a line</a>
</p>
</div>
<!-- /.col-lg-4 -->
</div>
<!-- /.row -->
</div>
</section>
<!-- Footer -->
<footer class=footer>
<div class=container>
<p class=pull-right>
Tell your friends: <a href=#>Facebook</a>, <a href=#>Twitter</a>, <a
href=#>Google+</a>
</p>
<p>© 2015 Pet Clinic, A Spring Framework Demonstration</p>
</div>
</footer>
<script src=scripts/5987e2ba.vendor.js></script>
<!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
<script>
(function(b, o, i, l, e, r) {
b.GoogleAnalyticsObject = l;
b[l] || (b[l] = function() {
(b[l].q = b[l].q || []).push(arguments)
});
b[l].l = +new Date;
e = o.createElement(i);
r = o.getElementsByTagName(i)[0];
e.src = '//www.google-analytics.com/analytics.js';
r.parentNode.insertBefore(e, r)
}(window, document, 'script', 'ga'));
ga('create', 'UA-XXXXX-X');
ga('send', 'pageview');
</script>
<script src=scripts/b6c3df09.main.js></script>

View file

@ -0,0 +1,3 @@
# robotstxt.org/
User-agent: *

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
console.log("'Allo 'Allo!");

View file

@ -0,0 +1,218 @@
<!DOCTYPE html>
<html class=no-js>
<head>
<meta charset=utf-8>
<title>Pet Clinic - Discover Pet Owners on your Neigborhood</title>
<meta name=description content="">
<meta name=viewport content="width=device-width">
<link rel="shortcut icon" href=/58f9eaa9.favicon.ico>
<!-- Place favicon.ico and apple-touch-icon.png in the root directory -->
<link rel=stylesheet href=styles/d588b099.main.css>
<body>
<!--[if lt IE 10]>
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
<![endif]-->
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class=container>
<div class=navbar-header>
<button type=button class="navbar-toggle collapsed"
data-toggle=collapse data-target=#navbar aria-expanded=false
aria-controls=navbar>
<span class=sr-only>Toggle navigation</span> <span class=icon-bar></span>
<span class=icon-bar></span> <span class=icon-bar></span>
</button>
<a class=navbar-brand href="/">Pet Clinic</a>
</div>
<div id=navbar class="navbar-collapse collapse pull-right">
<ul class="nav navbar-nav">
<li><a href=discover.html class=active>Discover</a></li>
<li><a href=#vet>Veterinarians</a></li>
<li><a href=#about>About</a></li>
</ul>
</div>
<!--/.navbar-collapse -->
</div>
</nav>
<!-- Owner Summary -->
<div id=content class=show-hero>
<div class=container>
<div class=row>
<div class=col-md-10>
<h1>John Doe</h1>
<p>Even the all-powerful Pointing has no control about the
blind texts it is an almost unorthographic life One day however a
small line of blind text by the name of Lorem Ipsum.</p>
</div>
<div class=col-md-2>
<a href=discover.html class="btn btn-link btn-md pull-right"> <span
class="glyphicon glyphicon-chevron-left"></span> Back
</a>
</div>
</div>
</div>
</div>
<!-- Owner Information / Update -->
<section id=owner_info class="sections sections-narrow">
<div class=container>
<div class=row>
<div class=col-md-7>
<form>
<fieldset>
<!-- Form Name -->
<legend>Owner Information</legend>
<div class=row>
<div class=col-md-6>
<!-- Text input-->
<div class=form-group>
<label class=form-label for=fldFirstName>First Name</label> <input
id=fldFirstName name=fldFirstName placeholder="Your name"
class="form-control input-lg" required>
</div>
</div>
<div class=col-md-6>
<!-- Text input-->
<div class=form-group>
<label class=form-label for=fldLastName>Last Name</label>
<div class=controls>
<input id=fldLastName name=fldLastName
placeholder="Your last name" class="form-control input-lg">
</div>
</div>
</div>
</div>
<!-- Textarea -->
<div class=form-group>
<label class=form-label for=fldAddress>Your Address</label>
<div class=controls>
<textarea id=fldAddress name=fldAddress class=form-control
rows=3>Your address</textarea>
</div>
</div>
<div class=row>
<div class=col-md-6>
<!-- Text input-->
<div class=form-group>
<label class=form-label for=fldCity>City</label>
<div class=controls>
<input id=fldCity name=fldCity placeholder="Your city"
class="form-control input-lg">
</div>
</div>
<!-- Text input-->
<div class=form-group>
<label class=form-label for=fldPhone>Phone</label>
<div class=controls>
<input id=fldPhone name=fldPhone
placeholder="Your phone number"
class="form-control input-lg">
</div>
</div>
</div>
</div>
<!-- Textarea -->
<div class=form-group>
<label class=form-label for=fldDesc>Description</label>
<div class=controls>
<textarea id=fldDesc name=fldDesc class=form-control rows=4>Write something about yourself.</textarea>
</div>
</div>
<!-- Button (Double) -->
<div class="form-group form-control-group">
<div class=controls>
<button id=buttonDelete name=buttonDelete
class="btn btn-link btn-lg btn-danger pull-right">Delete
Owner</button>
<button id=buttonUpdate name=buttonUpdate
class="btn btn-lg btn-success">Update Owner</button>
</div>
</div>
</fieldset>
</form>
</div>
<div class="col-md-4 offset-md-1"></div>
</div>
</div>
</section>
<!-- Browser page -->
<section class="sections sections-browse">
<div class=container>
<div class=row>
<div class=col-md-10>
<div class="btn btn-group">
<a href=show-prev.html class="btn btn-link btn-md"> <span
class="glyphicon glyphicon-chevron-left"></span> Previous
</a> <a href=show-next.html class="btn btn-link btn-md"> Next <span
class="glyphicon glyphicon-chevron-right"></span>
</a>
</div>
</div>
<div class=col-md-2>
<a href=discover.html class="btn btn-link btn-md pull-right"> <span
class="glyphicon glyphicon-chevron-left"></span> Back
</a>
</div>
</div>
</div>
</section>
<!-- Contact details -->
<section id=add_owner class="sections sections-narrow">
<div class=container>
<!-- Three columns of text below the carousel -->
<div class=row>
<div class=col-lg-4>
<h3>Business Hours</h3>
<p>Donec sed odio dui. Etiam porta sem malesuada magna mollis
euismod. Nullam id dolor id nibh ultricies vehicula ut id elit.
Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna.</p>
</div>
<!-- /.col-lg-4 -->
<div class=col-lg-4>
<h3>Our Location</h3>
<p>Duis mollis, est non commodo luctus, nisi erat porttitor
ligula, eget lacinia odio sem nec elit. Cras mattis consectetur
purus sit amet fermentum. Fusce dapibus, tellus ac cursus commodo,
tortor mauris condimentum nibh.</p>
</div>
<!-- /.col-lg-4 -->
<div class=col-lg-4>
<h3>Questions or comments</h3>
<p>Cras mattis consectetur purus sit amet fermentum.</p>
<p>
<a href=mailto:youremail@yourdomain.com type=submit
class="btn btn-default">Drop us a line</a>
</p>
</div>
<!-- /.col-lg-4 -->
</div>
<!-- /.row -->
</div>
</section>
<!-- Footer -->
<footer class=footer>
<div class=container>
<p class=pull-right>
Tell your friends: <a href=#>Facebook</a>, <a href=#>Twitter</a>, <a
href=#>Google+</a>
</p>
<p>© 2015 Pet Clinic, A Spring Framework Demonstration</p>
</div>
</footer>
<script src=scripts/5987e2ba.vendor.js></script>
<!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
<script>
(function(b, o, i, l, e, r) {
b.GoogleAnalyticsObject = l;
b[l] || (b[l] = function() {
(b[l].q = b[l].q || []).push(arguments)
});
b[l].l = +new Date;
e = o.createElement(i);
r = o.getElementsByTagName(i)[0];
e.src = '//www.google-analytics.com/analytics.js';
r.parentNode.insertBefore(e, r)
}(window, document, 'script', 'ga'));
ga('create', 'UA-XXXXX-X');
ga('send', 'pageview');
</script>
<script src=scripts/b6c3df09.main.js></script>

File diff suppressed because one or more lines are too long