Studies show that children who eat a nutritious breakfast function better. They do better in school, and have better concentration and more energy.

Most schools regularly send schedules of cafeteria menus home and/or have them posted on the school's website. With this advance information, you can plan on packing lunch on the days when the main course is one your child prefers not to eat. 

Many school districts have plans which allow you to pay for meals through an online account. Your child will get a card to "swipe" at the register. This is a convenient way to handle school meal accounts. 

Look into what is offered inside and outside of the cafeteria, including vending machines, a la carte, school stores, snack carts, and fundraisers held during the school day. All foods sold during the school day must meet nutrition standards established by the US Department of Agriculture (USDA). They should stock healthy choices such as fresh fruit, low-fat dairy products, water, and 100% fruit juice. Learn about your child's school wellness policy and get involved in school groups to put it into effect.  

Each 12-ounce soft drink contains approximately 10 teaspoons of sugar and 150 calories. Drinking just one can of soda a day increases a child's risk of obesity by 60%. Choose healthier options (such as water and appropriately sized juice and low-fat dairy products) to send in your child's lunch.

Traveling To and From School

317 S. Dixie Freeway

New Smyrna Beach, FL 32169

P: 386-424-1414  F:386-424-9130

Eating During

the School Day 

Bullying or cyberbullying is when one child picks on another child repeatedly. Bullying can be physical, verbal, or social. It can happen at school, on the playground, on the school bus, in the neighborhood, over the Internet, or through mobile devices like cell phones.

When Your Child Is Bullied

Alert school officials to the problems and work with them on solutions. 
Teach your child when and how to ask a trusted adult for help. 
Recognize the serious nature of bullying and acknowledge your child's feelings about being bullied. 
Help your child learn how to respond by teaching your child how to:
Look the bully in the eye.
Stand tall and stay calm in a difficult situation.
Walk away. 
Teach your child how to say in a firm voice. 
"I don't like what you are doing."
"Please do NOT talk to me like that."
"Why would you say that?" 
Encourage your child to make friends with other children. 
Support activities that interest your child.

Make sure an adult who knows about the bullying can watch out for your child's safety and well-being when you cannot be there.
Monitor your child’s social media or texting interactions so you can identify problems before they get out of hand.

When Your Child Is the Bully 

Be sure your child knows that bullying is never OK. 
Set firm and consistent limits on your child's aggressive behavior. 
Be a positive role model. Show children they can get what they want without teasing, threatening, or hurting someone. 
Use effective, non-physical discipline, such as loss of privileges. 
Develop practical solutions with the school principal, teachers, school social workers or psychologists, and parents of the children your child has bullied.

When Your Child Is a Bystander

Encourage your child to tell a trusted adult about the bullying. Encourage your child to join with others in telling bullies to stop.  
Help your child support other children who may be bullied. Encourage your child to include these children in activities. 


Create an environment that is conducive to doing homework starting at a young age. Children need a consistent work space in their bedroom or another part of the home that is quiet, without distractions, and promotes study.

Schedule ample time for homework; build this time into choices about participation in after school activities. 

Establish a household rule that the TV and other electronic distractions stay off during homework time. 

Supervise computer and Internet use.

By high school, it's not uncommon for teachers to ask students to submit homework electronically and perform other tasks on a computer. If your child doesn't have access to a computer or the Internet at home, work with teachers and school administration to develop appropriate accommodations. 

Be available to answer questions and offer assistance, but never do your child's homework for him or her. 

Take steps to help alleviate eye fatigue, neck fatigue and brain fatigue while studying. It may be helpful to close the books for a few minutes, stretch, and take a break periodically when it will not be too disruptive. 

If your child is struggling with a particular subject, speak with your child's teacher for recommendations on how you or another person can help your child at home or at school. If you have concerns about the assignments your child is receiving, talk with his or her teacher. 

If your child is having difficulty focusing on or completing homework, discuss this with your child's teacher, school counselor, or health care provider. 

For general homework problems that cannot be worked out with the teacher, a tutor may be considered.  

Some children need help organizing their homework. Checklists, timers, and parental supervision can help overcome homework problems.

Some children may need help remembering their assignments. Work with your child and his or her teacher to develop an appropriate way to keep track of his or her assignments--such as an assignment notebook. 

Establish a good sleep routine. Insufficient sleep is associated with lower academic achievement in middle school, high school and college, as well as higher rates of absenteeism and tardiness. The optimal amount of sleep for most adolescents (13 to 18 years of age) is in the range of 8 to 10 hours per night. 

Making the First Day Easier 

If your child seems nervous, remind him or her that there are probably a lot of students who are uneasy about the first day of school. This may be at any age. Teachers know that students are nervous and will make an extra effort to make sure everyone feels as comfortable as possible. 

Point out the positive aspects of starting school to create positive anticipation about the first day. Your child will see old friends and meet new ones. Refresh his or her positive memories about previous years, when he or she may have returned home after the first day with high spirits because of a good time. 

Find another child in the neighborhood with whom your student can walk to school or ride on the bus.

If it is a new school for your child, attend any available orientations and take an opportunity to tour the school before the first day.   

If you feel it is needed, drive your child (or walk with him or her) to school and pick him or her up on the first day.

​The following health and safety tips are from the American Academy of Pediatrics (AAP).

Review the basic rules with your child. 

School Bus 
Children should always board and exit the bus at locations that provide safe access to the bus or to the school building.​
Remind your child to wait for the bus to stop before approaching it from the curb. 
Make sure your child walks where he or she can see the bus driver (which means the driver will be able to see him or her, too).
Remind your child to look both ways to see that no other traffic is coming before crossing the street, just in case traffic does not stop as required.  
Your child should not move around on the bus.​
If your child’s school bus has lap/shoulder seat belts, make sure your child uses one at all times when in the bus. (If your child’s school bus does not have lap/shoulder belts, encourage the school system to buy or lease buses with lap/shoulder belts). See Where We Stand: Safety Restraints on the School Bus for more information. 
Check on the school's policy regarding food on the bus. Eating on the bus can present a problem for students with food allergies and can also lead to infestations of insects and vermin on the vehicles.
If your child has a chronic condition that could result in an emergency on the bus, make sure you work with the school nurse or other school health personnel to have a bus emergency plan.​

Always wear a bicycle helmet, no matter how short or long the ride. 
Ride on the right, in the same direction as auto traffic and ride in bake lanes if they are present. 
Use appropriate hand signals. 
Respect traffic lights and stop signs. 
Wear bright-colored clothing to increase visibility. White or light-colored clothing and reflective gear is especially important after dark. 
Know the "rules of the road." 

Walking to School 
Make sure your child's walk to school is a safe route with well-trained adult crossing guards at every intersection. 
Identify other children in the neighborhood with whom your child can walk to school. In neighborhoods with higher levels of traffic, consider organizing a "walking school bus," in which an adult accompanies a group of neighborhood children walking to school. 
Be realistic about your child's pedestrian skills. Because small children are impulsive and less cautious around traffic, carefully consider whether or not your child is ready to walk to school without adult supervision. 
If your children are young or are walking to a new school, walk with them or have another adult walk with them the first week or until you are sure they know the route and can do it safely.
Bright-colored clothing will make your child more visible to drivers. 

News and Events

633 Dunlawton AVe.

Port Orange, FL 32127

P: 386-424-1414  F:386-424-9130

Developing Good Homework & Study Habits

/* angular-svg-round-progressbar@0.3.8 2015-10-21 */ // shim layer with setTimeout fallback // credit Erik Möller and http://www.paulirish.com/2011/requestanimationframe-for-smart-animating/ 'use strict'; (function() { var lastTime = 0; var vendors = ['webkit', 'moz']; for(var x = 0; x < vendors.length="" &&="" !window.requestanimationframe;="" ++x)="" {="" window.requestanimationframe="window[vendors[x]+'RequestAnimationFrame'];" window.cancelanimationframe="window[vendors[x]+'CancelAnimationFrame']" ||="" window[vendors[x]+'cancelrequestanimationframe'];="" }="" if="" (!window.requestanimationframe){="" window.requestanimationframe="function(callback)" {="" var="" currtime="new" date().gettime();="" var="" timetocall="Math.max(0," 16="" -="" (currtime="" -="" lasttime));="" var="" id="window.setTimeout(function()" {="" callback(currtime="" +="" timetocall);="" },="" timetocall);="" lasttime="currTime" +="" timetocall;="" return="" id;="" };="" }="" if="" (!window.cancelanimationframe){="" window.cancelanimationframe="function(id)" {="" window.cleartimeout(id);="" };="" }="" }());="" angular.module('angular-svg-round-progress',="" []);="" 'use="" strict';="" angular.module('angular-svg-round-progress').constant('roundprogressconfig',="" {="" max:="" 50,="" semi:="" false,="" rounded:="" false,="" responsive:="" false,="" clockwise:="" true,="" radius:="" 100,="" color:="" "#45ccce",="" bgcolor:="" "#eaeaea",="" stroke:="" 15,="" duration:="" 800,="" animation:="" "easeoutcubic",="" offset:="" 0="" });="" 'use="" strict';="" angular.module('angular-svg-round-progress').service('roundprogressservice',="" [function(){="" var="" service="{};" var="" isnumber="angular.isNumber;" var="" base="document.head.querySelector('base');" fixes="" issues="" if="" the="" document="" has="" a=""> element service.resolveColor = base && base.href ? function(value){ var hashIndex = value.indexOf('#'); if(hashIndex > -1 && value.indexOf('url') > -1){ return value.slice(0, hashIndex) + window.location.href + value.slice(hashIndex); } return value; } : function(value){ return value; }; // credits to http://modernizr.com/ for the feature test service.isSupported = !!(document.createElementNS && document.createElementNS('http://www.w3.org/2000/svg', "svg").createSVGRect); // utility function var polarToCartesian = function(centerX, centerY, radius, angleInDegrees) { var angleInRadians = (angleInDegrees - 90) * Math.PI / 180.0; return { x: centerX + (radius * Math.cos(angleInRadians)), y: centerY + (radius * Math.sin(angleInRadians)) }; }; // deals with floats passed as strings service.toNumber = function(value){ return isNumber(value) ? value : parseFloat((value + '').replace(',', '.')); }; service.getOffset = function(element, options){ var value = +options.offset || 0; if(options.offset === 'inherit'){ var parent = element; var parentScope; while(!parent.hasClass('round-progress-wrapper')){ if(service.isDirective(parent)){ parentScope = parent.scope().$parent.getOptions(); value += ((+parentScope.offset || 0) + (+parentScope.stroke || 0)); } parent = parent.parent(); } } return value; }; // credit to http://stackoverflow.com/questions/5736398/how-to-calculate-the-svg-path-for-an-arc-of-a-circle service.updateState = function(val, total, R, ring, size, isSemicircle) { if(!size) return ring; var value = val > 0 ? Math.min(val, total) : 0; var type = isSemicircle ? 180 : 359.9999; var perc = total === 0 ? 0 : (value / total) * type; var x = size/2; var start = polarToCartesian(x, x, R, perc); // in this case x and y are the same var end = polarToCartesian(x, x, R, 0); var arcSweep = (perc <= 180="" "0"="" :="" "1");="" var="" d="[" "m",="" start.x,="" start.y,="" "a",="" r,="" r,="" 0,="" arcsweep,="" 0,="" end.x,="" end.y="" ].join("="" ");="" return="" ring.attr('d',="" d);="" };="" service.isdirective="function(el){" if(el="" &&="" el.length){="" return="" (typeof="" el.attr('round-progress')="" !="=" 'undefined'="" ||="" el[0].nodename.tolowercase()="==" 'round-progress');="" }="" return="" false;="" };="" easing="" functions="" by="" robert="" penner="" source:="" http://www.robertpenner.com/easing/="" license:="" http://www.robertpenner.com/easing_terms_of_use.html="" service.animations="{" t:="" is="" the="" current="" time="" (or="" position)="" of="" the="" tween.="" this="" can="" be="" seconds="" or="" frames,="" steps,="" seconds,="" ms,="" whatever="" –="" as="" long="" as="" the="" unit="" is="" the="" same="" as="" is="" used="" for="" the="" total="" time.="" b:="" is="" the="" beginning="" value="" of="" the="" property.="" c:="" is="" the="" change="" between="" the="" beginning="" and="" destination="" value="" of="" the="" property.="" d:="" is="" the="" total="" time="" of="" the="" tween.="" jshint="" eqeqeq:="" false,="" -w041:="" true="" linearease:="" function(t,="" b,="" c,="" d)="" {="" return="" c="" *="" t="" d="" +="" b;="" },="" easeinquad:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c*(t/="d)*t" +="" b;="" },="" easeoutquad:="" function="" (t,="" b,="" c,="" d)="" {="" return="" -c="" *(t/="d)*(t-2)" +="" b;="" },="" easeinoutquad:="" function="" (t,="" b,="" c,="" d)="" {="" if="" ((t/="d/2)">< 1)="" return="" c/2*t*t="" +="" b;="" return="" -c/2="" *="" ((--t)*(t-2)="" -="" 1)="" +="" b;="" },="" easeincubic:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c*(t/="d)*t*t" +="" b;="" },="" easeoutcubic:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c*((t="t/d-1)*t*t" +="" 1)="" +="" b;="" },="" easeinoutcubic:="" function="" (t,="" b,="" c,="" d)="" {="" if="" ((t/="d/2)">< 1)="" return="" c/2*t*t*t="" +="" b;="" return="" c/2*((t-="2)*t*t" +="" 2)="" +="" b;="" },="" easeinquart:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c*(t/="d)*t*t*t" +="" b;="" },="" easeoutquart:="" function="" (t,="" b,="" c,="" d)="" {="" return="" -c="" *="" ((t="t/d-1)*t*t*t" -="" 1)="" +="" b;="" },="" easeinoutquart:="" function="" (t,="" b,="" c,="" d)="" {="" if="" ((t/="d/2)">< 1)="" return="" c/2*t*t*t*t="" +="" b;="" return="" -c/2="" *="" ((t-="2)*t*t*t" -="" 2)="" +="" b;="" },="" easeinquint:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c*(t/="d)*t*t*t*t" +="" b;="" },="" easeoutquint:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c*((t="t/d-1)*t*t*t*t" +="" 1)="" +="" b;="" },="" easeinoutquint:="" function="" (t,="" b,="" c,="" d)="" {="" if="" ((t/="d/2)">< 1)="" return="" c/2*t*t*t*t*t="" +="" b;="" return="" c/2*((t-="2)*t*t*t*t" +="" 2)="" +="" b;="" },="" easeinsine:="" function="" (t,="" b,="" c,="" d)="" {="" return="" -c="" *="" math.cos(t/d="" *="" (math.pi/2))="" +="" c="" +="" b;="" },="" easeoutsine:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c="" *="" math.sin(t/d="" *="" (math.pi/2))="" +="" b;="" },="" easeinoutsine:="" function="" (t,="" b,="" c,="" d)="" {="" return="" -c/2="" *="" (math.cos(math.pi*t/d)="" -="" 1)="" +="" b;="" },="" easeinexpo:="" function="" (t,="" b,="" c,="" d)="" {="" return="" (t="=0)" b="" :="" c="" *="" math.pow(2,="" 10="" *="" (t/d="" -="" 1))="" +="" b;="" },="" easeoutexpo:="" function="" (t,="" b,="" c,="" d)="" {="" return="" (t="=d)" b+c="" :="" c="" *="" (-math.pow(2,="" -10="" *="" t/d)="" +="" 1)="" +="" b;="" },="" easeinoutexpo:="" function="" (t,="" b,="" c,="" d)="" {="" if="" (t="=0)" return="" b;="" if="" (t="=d)" return="" b+c;="" if="" ((t/="d/2)">< 1)="" return="" c/2="" *="" math.pow(2,="" 10="" *="" (t="" -="" 1))="" +="" b;="" return="" c/2="" *="" (-math.pow(2,="" -10="" *="" --t)="" +="" 2)="" +="" b;="" },="" easeincirc:="" function="" (t,="" b,="" c,="" d)="" {="" return="" -c="" *="" (math.sqrt(1="" -="" (t/="d)*t)" -="" 1)="" +="" b;="" },="" easeoutcirc:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c="" *="" math.sqrt(1="" -="" (t="t/d-1)*t)" +="" b;="" },="" easeinoutcirc:="" function="" (t,="" b,="" c,="" d)="" {="" if="" ((t/="d/2)">< 1)="" return="" -c/2="" *="" (math.sqrt(1="" -="" t*t)="" -="" 1)="" +="" b;="" return="" c/2="" *="" (math.sqrt(1="" -="" (t-="2)*t)" +="" 1)="" +="" b;="" },="" easeinelastic:="" function="" (t,="" b,="" c,="" d)="" {="" var="" s="1.70158;var" p="0;var" a="c;" if="" (t="=0)" return="" b;="" if="" ((t/="d)==1)" return="" b+c;="" if="" (!p)="" p="d*0.3;" if="" (a="">< math.abs(c))="" {="" a="c;" s="p/4;" }="" else="" s="p/(2*Math.PI)" *="" math.asin="" (c/a);="" return="" -(a*math.pow(2,10*(t-="1))" *="" math.sin(="" (t*d-s)*(2*math.pi)/p="" ))="" +="" b;="" },="" easeoutelastic:="" function="" (t,="" b,="" c,="" d)="" {="" var="" s="1.70158;var" p="0;var" a="c;" if="" (t="=0)" return="" b;="" if="" ((t/="d)==1)" return="" b+c;="" if="" (!p)="" p="d*0.3;" if="" (a="">< math.abs(c))="" {="" a="c;" s="p/4;" }="" else="" s="p/(2*Math.PI)" *="" math.asin="" (c/a);="" return="" a*math.pow(2,-10*t)="" *="" math.sin(="" (t*d-s)*(2*math.pi)/p="" )="" +="" c="" +="" b;="" },="" easeinoutelastic:="" function="" (t,="" b,="" c,="" d)="" {="" jshint="" eqeqeq:="" false,="" -w041:="" true="" var="" s="1.70158;var" p="0;var" a="c;" if="" (t="=0)" return="" b;="" if="" ((t/="d/2)==2)" return="" b+c;="" if="" (!p)="" p="d*(0.3*1.5);" if="" (a="">< math.abs(c))="" {="" a="c;" s="p/4;" }="" else="" s="p/(2*Math.PI)" *="" math.asin="" (c/a);="" if="" (t="">< 1)="" return="" -0.5*(a*math.pow(2,10*(t-="1))" *="" math.sin(="" (t*d-s)*(2*math.pi)/p="" ))="" +="" b;="" return="" a*math.pow(2,-10*(t-="1))" *="" math.sin(="" (t*d-s)*(2*math.pi)/p="" )*0.5="" +="" c="" +="" b;="" },="" easeinback:="" function="" (t,="" b,="" c,="" d,="" s)="" {="" jshint="" eqeqeq:="" false,="" -w041:="" true="" if="" (s="=" undefined)="" s="1.70158;" return="" c*(t/="d)*t*((s+1)*t" -="" s)="" +="" b;="" },="" easeoutback:="" function="" (t,="" b,="" c,="" d,="" s)="" {="" jshint="" eqeqeq:="" false,="" -w041:="" true="" if="" (s="=" undefined)="" s="1.70158;" return="" c*((t="t/d-1)*t*((s+1)*t" +="" s)="" +="" 1)="" +="" b;="" },="" easeinoutback:="" function="" (t,="" b,="" c,="" d,="" s)="" {="" jshint="" eqeqeq:="" false,="" -w041:="" true="" if="" (s="=" undefined)="" s="1.70158;" if="" ((t/="d/2)">< 1)="" return="" c/2*(t*t*(((s*="(1.525))+1)*t" -="" s))="" +="" b;="" return="" c/2*((t-="2)*t*(((s*=(1.525))+1)*t" +="" s)="" +="" 2)="" +="" b;="" },="" easeinbounce:="" function="" (t,="" b,="" c,="" d)="" {="" return="" c="" -="" service.animations.easeoutbounce="" (d-t,="" 0,="" c,="" d)="" +="" b;="" },="" easeoutbounce:="" function="" (t,="" b,="" c,="" d)="" {="" if="" ((t/="d)">< (1/2.75))="" {="" return="" c*(7.5625*t*t)="" +="" b;="" }="" else="" if="" (t="">< (2/2.75))="" {="" return="" c*(7.5625*(t-="(1.5/2.75))*t" +="" 0.75)="" +="" b;="" }="" else="" if="" (t="">< (2.5/2.75))="" {="" return="" c*(7.5625*(t-="(2.25/2.75))*t" +="" 0.9375)="" +="" b;="" }="" else="" {="" return="" c*(7.5625*(t-="(2.625/2.75))*t" +="" 0.984375)="" +="" b;="" }="" },="" easeinoutbounce:="" function="" (t,="" b,="" c,="" d)="" {="" if="" (t="">< d/2)="" return="" service.animations.easeinbounce="" (t*2,="" 0,="" c,="" d)="" *="" 0.5="" +="" b;="" return="" service.animations.easeoutbounce="" (t*2-d,="" 0,="" c,="" d)="" *="" 0.5="" +="" c*0.5="" +="" b;="" }="" };="" return="" service;="" }]);="" 'use="" strict';="" angular.module('angular-svg-round-progress')="" .directive('roundprogress',="" ['$window',="" 'roundprogressservice',="" 'roundprogressconfig',="" function($window,="" service,="" roundprogressconfig){="" var="" base="{" restrict:="" "ea",="" replace:="" true,="" transclude:="" true,="" scope:{="" current:="" "=", max: " =",="" semi:="" "=", rounded: " =",="" clockwise:="" "=", responsive: " =",="" radius:="" "@",="" color:="" "@",="" bgcolor:="" "@",="" stroke:="" "@",="" duration:="" "@",="" animation:="" "@",="" offset:="" "@"="" }="" };="" if(!service.issupported){="" return="" angular.extend(base,="" {="" placeholder="" element="" to="" keep="" the="" structure="" template:="">
' }); } return angular.extend(base, { link: function(scope, element){ var isNested = !element.hasClass('round-progress-wrapper'); var svg = isNested ? element : element.find('svg').eq(0); var ring = svg.find('path').eq(0); var background = svg.find('circle').eq(0); var options = angular.copy(roundProgressConfig); var lastAnimationId; var parentChangedListener; scope.getOptions = function(){ return options; }; var renderCircle = function(){ var isSemicircle = options.semi; var responsive = options.responsive; var radius = +options.radius || 0; var stroke = +options.stroke; var diameter = radius*2; var backgroundSize = radius - (stroke/2) - service.getOffset(element, options); svg.css({ "top": 0, "left": 0, "position": responsive ? "absolute" : "static", "width": responsive ? "100%" : (diameter + "px"), "height": responsive ? "100%" : (isSemicircle ? radius : diameter) + "px", "overflow": "hidden" // on some browsers the background overflows, if in semicircle mode }); // when nested, the element shouldn't define its own viewBox if(!isNested){ // note that we can't use .attr, because if jQuery is loaded, // it lowercases all attributes and viewBox is case-sensitive svg[0].setAttribute('viewBox', '0 0 ' + diameter + ' ' + (isSemicircle ? radius : diameter)); element.css({ "width": responsive ? "100%" : "auto", "position": "relative", "padding-bottom": responsive ? (isSemicircle ? "50%" : "100%") : 0 }); } element.css({ "width": responsive ? "100%" : "auto", "position": "relative", "padding-bottom": responsive ? (isSemicircle ? "50%" : "100%") : 0 }); ring.css({ "stroke": service.resolveColor(options.color), "stroke-width": stroke, "stroke-linecap": options.rounded ? "round": "butt" }); if(isSemicircle){ ring.attr("transform", options.clockwise ? "translate("+ 0 +","+ diameter +") rotate(-90)" : "translate("+ diameter +", "+ diameter +") rotate(90) scale(-1, 1)"); }else{ ring.attr("transform", options.clockwise ? "" : "scale(-1, 1) translate("+ (-diameter) +" 0)"); } background.attr({ "cx": radius, "cy": radius, "r": backgroundSize >= 0 ? backgroundSize : 0 }).css({ "stroke": service.resolveColor(options.bgcolor), "stroke-width": stroke }); }; var renderState = function(newValue, oldValue, preventAnimationOverride){ var max = service.toNumber(options.max || 0); var end = newValue > 0 ? $window.Math.min(newValue, max) : 0; var start = (oldValue === end || oldValue < 0)="" 0="" :="" (oldvalue="" ||="" 0);="" fixes="" the="" initial="" animation="" var="" changeinvalue="end" -="" start;="" var="" easinganimation="service.animations[options.animation];" var="" starttime="new" $window.date();="" var="" duration="+options.duration" ||="" 0;="" var="" preventanimation="preventAnimationOverride" ||="" (newvalue=""> max && oldValue > max) || (newValue < 0="" &&="" oldvalue="">< 0)="" ||="" duration="">< 25;="" var="" radius="options.radius;" var="" circlesize="radius" -="" (options.stroke/2)="" -="" service.getoffset(element,="" options);="" var="" elementsize="radius*2;" var="" issemicircle="options.semi;" stops="" some="" expensive="" animating="" if="" the="" value="" is="" above="" the="" max="" or="" under="" 0="" if(preventanimation){="" service.updatestate(end,="" max,="" circlesize,="" ring,="" elementsize,="" issemicircle);="" }else{="" $window.cancelanimationframe(lastanimationid);="" (function="" animation(){="" var="" currenttime="$window.Math.min(new" date()="" -="" starttime,="" duration);="" service.updatestate(="" easinganimation(currenttime,="" start,="" changeinvalue,="" duration),="" max,="" circlesize,="" ring,="" elementsize,="" issemicircle);="" if(currenttime="">< duration){="" lastanimationid="$window.requestAnimationFrame(animation);" }="" })();="" }="" };="" var="" keys="Object.keys(base.scope).filter(function(key){" return="" key="" !="=" 'current';="" });="" properties="" that="" are="" used="" only="" for="" presentation="" scope.$watchgroup(keys,="" function(newvalue){="" for(var="" i="0;" i="">< newvalue.length;="" i++){="" if(typeof="" newvalue[i]="" !="=" 'undefined'){="" options[keys[i]]="newValue[i];" }="" }="" rendercircle();="" scope.$broadcast('$parentoffsetchanged');="" it="" doesn't="" have="" to="" listen="" for="" changes="" on="" the="" parent="" unless="" it="" inherits="" if(options.offset="==" 'inherit'="" &&="" !parentchangedlistener){="" parentchangedlistener="scope.$on('$parentOffsetChanged'," function(){="" renderstate(scope.current,="" scope.current,="" true);="" rendercircle();="" });="" }else="" if(options.offset="" !="=" 'inherit'="" &&="" parentchangedlistener){="" parentchangedlistener();="" }="" });="" properties="" that="" are="" used="" during="" animation.="" some="" of="" these="" overlap="" with="" the="" ones="" that="" are="" used="" for="" presentation="" scope.$watchgroup(['current',="" 'max',="" 'animation',="" 'duration',="" 'radius',="" 'stroke',="" 'semi',="" 'offset'],="" function(newvalue,="" oldvalue){="" renderstate(service.tonumber(newvalue[0]),="" service.tonumber(oldvalue[0]));="" });="" },="" template:="" function(element){="" var="" parent="element.parent();" var="" directivename='round-progress' ;="" var="" template="[">', '', '', '', '' ]; while(parent.length && !service.isDirective(parent)){ parent = parent.parent(); } if(!parent || !parent.length){ template.unshift('
'); template.push('
'); } return template.join('\n'); } }); }]);