text:
Pós AF
Cursos AF
Eventos AF
What's in a name? Using movement system diagnoses versus pathoanatomic diagnoses.
26/11/2020 /em Serviços /por AF Fisioterapia
Authors: Paula M. Ludewig, PT, PhD, Rebekah L. Lawrence, PT, DPT, OCS, Jonathan P. Braman, MD
In this issue of JOSPT, the Orthopaedic Section of the American Physical Therapy Association introduces the first of its shoulder clinical practice guidelines (CPGs), titled "Shoulder Pain and Mobility Deficits: Adhesive Capsulitis." We congratulate the authors on a thorough, well-written document that summarizes the current state of evidence on this topic.
The figure included in this month's CPGs also provides diagnostic labels for 2 future shoulder-related CPGs: shoulder stability and movement coordination impairments (dislocation of shoulder joint, or sprain and strain of shoulder joint); and shoulder pain and muscle power deficits (rotator cuff syndrome). These latest guidelines add to those previously published in the Journal, which include among others "Knee Pain and Mobility Impairments: Meniscal and Articular Cartilage Lesions" and "Achilles Pain, Stiffness, and Muscle Power Deficits: Achilles Tendinitis."
The first step in the potential use of CPGs requires that the clinician determine if the patient matches the group represented by the guidelines. This first step involves a diagnostic process by which we name, or label, the condition we intend to treat. Diagnostic labels are intended to direct treatment and guide best practice, inform prognosis, and provide homogeneous patient groups with which to test effectiveness and efficacy of interventions. Diagnostic labels also facilitate communication between practitioners and influence reimbursement. Physical therapists are obligated to provide diagnoses for their patients, and the Guide to Physical Therapist Practice further defines "practice patterns" as diagnostic groups. Even so, these practice patterns may not provide adequate specificity to direct treatment and have not been uniformly adopted by clinicians as diagnostic labels.
The collection of Orthopaedic Section CPGs noted above uses long diagnostic labels to identify the underlying clinical conditions. Many physical therapists advocate for the diagnostic labels to be shortened to common, concise terms, such as adhesive capsulitis, shoulder instability, rotator cuff disease, impingement syndrome, knee meniscal tear, or Achilles tendinitis. These shorter diagnostic labels are commonly used by physicians and often referred to as medical diagnoses. Such medical diagnoses predominantly identify a specific tissue pathology presumed to be the cause of a patient's pain and dysfunction. This tissue pathology-based diagnostic labeling follows a pathoanatomic model of disease, in which the diagnostic process focuses on identification of the anatomical pain-generating structure. Many physical therapists are taught to direct their orthopaedic evaluation toward classifying patients based on a pathoanatomic model, such as "signs and symptoms consistent with rotator cuff tear" or "labral tear." A primary argument for this approach is that, in using the same labels as referring physicians, we theoretically enhance communication.
However, with increasing frequency, physical therapists evaluate and treat patients through direct access or without a specific diagnostic label from a referring physician (eg, shoulder pain). More importantly, physical therapists treat movement-related impairments rather than structural anatomical abnormalities. As such, using a pathoanatomic model to define physical therapy-related diagnostic labels creates a disconnect between our diagnostic and treatment processes. The diagnostic labels in the CPGs identified above are based on movement impairment language defined in the International Classification of Functioning, Disability and Health (ICF) framework By changing the focus of the label to the human movement system, the diagnosis changes to a pathokinesiologic model, where the diagnostic process focuses on identification of characteristic movement impairments. We support this change in diagnostic labeling for a number of reasons. Foremost, pathoanatomic diagnoses, when not directly confirmed as the true cause of the pain and dysfunction, may misdirect our treatment interventions rather than guide them. We further advocate that diagnostic labels may better relate to the physical therapy treatment goal of improving patient function if based in the movement system rather than on pathoanatomic structures.
There are numerous limitations to a pathoanatomic model as the primary means to diagnostically categorize patients. First, using pathoanatomic diagnoses may not adequately direct physical therapy interventions. Second, pathoanatomic diagnoses may not correctly describe the true underlying pathology (eg, adhesive capsulitis) or account for multiple coexisting pathologies (eg, bursitis, rotator cuff disease, labral pathology). Third, pathoanatomic labels are often used inconsistently among healthcare practitioners (eg, shoulder impingement), thereby complicating effective communication and the execution of the plan of care. Fourth, the scope of physical therapy practice does not currently include all the tools necessary to accurately assign these diagnostic labels (eg, imaging, diagnostic arthroscopy) or treat the specific tissue pathology (eg, surgery). Finally, pathoanatomic diagnoses are often predominantly based on the use of "special tests," which generally have poor sensitivity and specificity and, consequently, poor diagnostic accuracy.
The CPG titled "Shoulder Pain and Mobility Deficits: Adhesive Capsulitis" published in this issue of JOSPTstates that "a medical diagnosis of adhesive capsulitis … does not aid in treatment decision making for rehabilitation." The guideline subsequently advocates for the identification of patterns or clusters of impairments and tissue irritability to further guide rehabilitation. The most characteristic movement impairment for this condition is a "global loss of both active and passive shoulder range of motion." Thus, the diagnostic label of "shoulder pain and mobility deficits" is based on this characteristic movement impairment rather than on presumed tissue pathology. Providing a diagnostic label based on the patterns or clusters of movement impairments that physical therapists treat provides labels with greater potential to direct our interventions. In cases when the tissue pathology is specifically known rather than presumed, diagnostic labels can combine relevant movement system and pathoanatomic terms. For example, shoulder mobility deficit associated with capsular contracture is a useful diagnosis because it differentiates from what may be a similar clinical presentation in the case of glenohumeral osteoarthritis. Potential subclassification of movement system diagnostic labels toward directions of movement impairments (eg, relative amount of external versus internal rotation range-of-motion deficit) guides subsequent physical therapy intervention better than historical subclassification of pathoanatomic labels, such as labeling adhesive capsulitis as being primary or secondary.
Identifying a diagnostic label within the human movement system is consistent with the diagnostic approach advocated by the Diagnosis Dialog group. This group of physical therapy academicians, clinicians, and researchers advocates to "(1) use standardized anatomical, physiological, or functional terms that concisely describe the condition or syndrome of the human movement system, (2) use standardized movement-related terms that already exist, (3) include, if deemed necessary for clarity, the name of the pathology, disease, or disorder that is associated with the diagnosis, and (4) be as short as possible to improve clinical usefulness."
Movement system diagnostic labels have several advantages. First, they "reorder" the label to put the movement system first, staying consistent with physical therapists' professional identity, training, and licensure as experts in the human movement system. This further prioritizes movement evaluation in the diagnostic process, thereby reducing the emphasis on special tests. Second, movement system diagnostic labels use accepted biomechanics/kinesiology terminology and do not "lose" any information on pathology or hinder communication with physicians. Third, this movement system approach provides diagnostic labels within physical therapists' professional scope and within the "tools" currently used in the diagnostic process. As such, movement system diagnoses can be appropriately used when patients are seen in a direct-access setting or when physician referrals are nonspecific (eg, "shoulder pain"). Finally, movement system diagnostic labels allow for integration of ICF language, which increases focus on patient function.
Even after considering all of these issues, there maybe reluctance to abandon a concise and traditional diagnostic label such as adhesive capsulitis. A contrasting view would argue that both physicians and physical therapists have a clear picture of this condition and how these patients present. As previously noted, however, a limitation of the pathoanatomic model is simply identifying the pathology. For instance, the CPG in this issue of JOSPT identifies that a number of the presumptions about the condition and label "adhesive capsulitis" are not well supported with evidence. Indeed, the diagnostic recommendations are provided at the level of expert opinion, and the strongest grade of evidence for intervention effectiveness is provided for corticosteroid injections. The CPG notes, "The following studies implicate that the initial barrier to joint motion is pain and muscle guarding, as opposed to fibrosis or adhesions, because the results of all studies demonstrate significant improvements in motion immediately following steroid injections." The premise that capsular adhesions may not be the primary restriction in many patients diagnosed with adhesive capsulitis is further supported by dramatic increases to near-normal range of motion in patients after suprascapular nerve block.7 If the diagnostic label implicates the capsule, and if this is not directly confirmed as the true cause of the dysfunction and movement impairment, we may misdirect our treatment interventions rather than guide them. Misdirected treatment interventions resulting from pathoanatomic diagnostic labeling are also demonstrated with clinical outcomes being unrelated to the presence or absence of disc her-niation5 and the increasing frequency of anterior acromioplasty for shoulder "impingement," despite no increased effectiveness of surgery over conservative care.
Physical therapists are often reluctant to change from common pathoanatomic labels even if they are inaccurate, because they understandably believe that it is necessary for physical therapists and physicians to "speak the same language." Interestingly, among orthopaedic surgeon shoulder specialists, there is growing advocacy for abandoning the most commonly used shoulder diagnostic label, "shoulder impingement," and replacing this label with other terms. Neer's original diagnosis was intended to direct a specific treatment of anterior acromioplasty based on a presumed pathoanatomic acromial morphology. Physical therapists, when using the same label, however, may do so with different meaning, presuming movement-related mechanisms such as superior humeral-head translation or lack of adequate scapular motion to clear the acromion during arm elevation. Using the same terms with different meaning further confounds communication among professionals.
There are an extensive number of pathoanatomic diagnostic labels in the broad category of "shoulder impingement" that are used by different practitioners for the same patient presentation. These include subacromial or internal impingement, bursitis, partial rotator cuff tear, isolated full-thickness rotator cuff tear, rotator cuff tendinopathy, or long head of biceps tendinopathy. Many of these patients may also have comorbid glenoid labral tears, underlying glenohumeral instability, or acromioclavicular osteoarthritis. Often, the specific anatomic lesion causing the pain is unknown, and Neer's proposed mechanism of impingement and the associated clinical diagnostic tests are not well supported in the literature. As such, the diagnostic label of "shoulder impingement" has become too broad and inconsistently used to effectively direct treatment, for both surgeons and physical therapists. Furthermore, because the rotator cuff is not always the source of the pain and dysfunction, a label of rotator cuff disease is also inadequate.
Based on the figure included in the "Shoulder Pain and Mobility Deficits: Adhesive Capsulitis" guidelines, an upcoming CPG will use the label "shoulder pain and muscle power deficits: rotator cuff syndrome" for the broad category of patients with "impingement." It is unlikely that a single therapeutic approach can most effectively be used to treat all of the likely diverse patients with such a diagnostic label. More likely, there are subgroups within this broad category, such that if we could reliably and validly distinguish them in a diagnostic process, we could improve treatment outcomes. These subgroups may better relate to the critically important issue of patient function if they are based on movement impairments or movement-pain relationships rather than as pathoanatomic subgroups.
It is apparent from the change in labels in the Orthopaedic Section CPGs, as well as from reports among shoulder surgeons that there is a need for interdisciplinary discussions on redefining diagnostic labels. Though the labels in this issue's CPGs may appear long and cumbersome, they are consistent with movement system labels as well as with ICF language. Further refinement and subclassification of diagnostic labels will occur as we determine the appropriate levels of both conciseness and specificity to direct practice. Therapists, surgeons, clinicians, and researchers need to work together to make this nomenclature consistent and useful across providers of musculoskeletal care. This change provides an initial framework to initiate research studies regarding classification of shoulder pain, and begins to disentangle us from presumed pathoanatomic conditions that often do not relate to function. We look forward to further dialog to enhance the diagnostic process and, subsequently, the care we provide for our patients.
Artigo original: https://www.jospt.org/doi/full/10.2519/jospt.2013.0104
https://www.affisioterapia.com.br/wp-content/uploads/2018/04/ombro-artigo.png 454 1352 AF Fisioterapia https://www.affisioterapia.com.br/wp-content/uploads/2016/04/AF-menu.png AF Fisioterapia2020-11-26 20:07:232020-12-17 15:13:53What's in a name? Using movement system diagnoses versus pathoanatomic diagnoses.
AF Cursos


I always get people who are keen to build their own electric skateboard ask me what parts I recommend using, of course I recommend only the best parts... The problem with using the best parts is it can get a little bit expensive..
Once this price rises too high some people start to question why they should build their own when they could just buy it pre-built in a box.
It raises a very important point! Why bother building your own electric skateboard if it might end up costing more?
On the electric skateboard forum I wrote a detailed article that tries to explain the intricacies of building your own electric skateboard.


text:
DVD New Release
Superman & Lois: The Complete Second Season - Greg Berlanti [DVD]
Season two opens with the dust still settling in Smallville following the shocking outcome of the confrontation between Tal-Rho and Superman. Smallville's national profile is booming... but something deep below the surface will send shockwaves through the town and may spell the end of everything. At the Smallville Gazette, Lois Lane and Chrissy Beppo are divided when an old story with a personal connection to Lois casts doubt on her professional credibility. The Kent sons also find themselves dealing with change. Athlete Jonathan faces new challenges on the football field that will lead him to questionable actions, while Jordan and Sarah Cushing's individual secrets threaten to erode their growing relationship. Her family also deals with new challenges as Lana's foray into local politics proves more demanding than she assumed, and leaves Kyle concerned that long-buried mistakes could come back to threaten the family. Against all of this, General Samuel Lane finds retirement doesn't necessarily make life quieter, while John Henry Irons and his recently arrived daughter Natalie attempt to make this new Earth their home while figuring out their place in the Kents' lives.
Greg Berlanti (Executive Producer)
Todd Helbing (Executive Producer)
Tyler Hoechlin (Actor)
Elizabeth Tulloch (Actor)
Jordan Elsass (Actor)
Alex Garfin (Actor)
Erik Valdez (Actor)
Inde Navarrette (Actor)
Wolé Parks (Actor)
Adam Rayner (Actor)
Dylan Walsh (Actor)
Emmanuelle Chriqui (Actor)
Sofia Hasmik (Actor)

redpajama_set_name: RedPajamaCommonCrawl


text:
Glen Fritzler Receives California Scuba Service Award
By Mark YoungJune 5, 2019September 3rd, 2019No Comments
California native Glen Fritzler was presented the California Scuba Service Award during the Saturday evening Scuba Show celebration held in Long Beach on May 4, 2019.
Fritzler, owner of Truth Aquatics live-aboard fleet, started diving with his dad at the age of 12, and spent practically every weekend diving the coves in Laguna Beach. Occasionally the father and son buddy team would jump on a charter dive boat from San Pedro bound for the Channel Islands. One day they joined skipper Roy Hauser on his 57-foot boat Truth to dive the backside of Catalina, and that's when Glen says his life and his calling were sealed.
After falling in love with Roy's boat, father and son went to sign up for another trip, only to learn that the boat had crashed at San Clemente Island and was a complete loss. When they went out with Roy on a boat he was using while starting construction of a new, larger Truth, Roy invited Glen to spend a week helping him build the boat. Glen ended up spending the entire summer working for Roy, and Glen became a deckhand after the boat was launched. By 1979, at the minimum age of 19, he became a licensed captain. That's when Roy proposed taking Glen on as a partner, allowing him to build equity in the operation.
After running the Truth for a year, Roy and Glen decided to build a newer, larger vessel, adding the Conception to their fleet in the summer of 1981. Conception was California's crown jewel of live-aboard dive boats. It's also where Glen met the love of his life, Dana. On the couple's first dive together they encountered a 17-foot great white shark, truly a memorable first dive-date experience. They married in the summer of 1986 and have a son Austin, a wild land firefighter, and daughter Ashley, an equestrian.
Truth Aquatics started construction on a third boat, the Vision, in 1984. Around the same time, they secured the lease for Santa Barbara's Sea Landing facility. Today Sea Landing accommodates the three-boat fleet and Glen subleases the rest to water sports concessions including a whale watching boat, a dive center, and a jet ski rental company. Sea Landing is the hub for ocean activities in Santa Barbara.
In the early 2000s luxury dive boats were popping up in warmer water destinations around the globe and California dive business started to slow. Roy had retired and Glen reinvigorated his business by securing a contract with the Channel Islands National Park to take non-diving passengers to visit the islands. The trips include hosting the Sierra Club and various school groups — seniors and kids alike enjoy the thrill of experiencing the Channel Islands for the first time onboard a Truth Aquatics vessel. Through these and other types of trips showcasing what the region has to offer, Glen hopes to bring California diving back as a worldwide destination.
As the Truth turns 45 this year, Glen estimates that the three boats have hosted over 450,000 divers, and 1.3 million California dives. For more information, visit truthaquatics.com
Previous PostSanta Cruz Island: "On Fire" at Flame Reef
Next PostAttack of the Purple Sea Urchins: What Happens When Nature is Out of Balance
EventsNews & EventsUncategorized
10.22.22 The Journal of Diving History Presents Santa Barbara Divers Reunion
California Diving News
BIRTH OF A BOOK: Dottie Frazier's Memoir of Her Life in the Water
Karen Straus
California Glory: Our Coastal Kelp Forests
Bonnie J. Cardone


This paper proposes a new method for local key and chord estimation from audio signals. This method relies primarily on principles from music theory, and does not require any training on a corpus of labelled audio files. A harmonic content of the musical piece is first extracted by computing a set of chroma vectors. A set of chord/key pairs is selected for every frame by correlation with fixed chord and key templates. An acyclic harmonic graph is constructed with these pairs as vertices, using a musical distance to weigh its edges. Finally, the sequences of chords and keys are obtained by finding the best path in the graph using dynamic programming. The proposed method allows a mutual chord and key estimation. It is evaluated on a corpus composed of Beatles songs for both the local key estimation and chord recognition tasks, as well as a larger corpus composed of songs taken from the Billboard dataset.


If you have ever witnessed an unfortunate encounter between sunscreen and eyes, you know firsthand just how excruciating it can be. In fact, someone who has experienced a severe case may say that it is a good alternative to carrying around mace or pepper spray. It can take a long time before the victim can open his eyes, especially outside in the bright sun.
Needless to say rubbing sunblock in your eyes is likely to ruin a day at the beach in an instant. While it is common that discomfort will last for a while, it is important to treat it as soon as possible.
The most effective treatment is to right away flush the eye out with a stream of water for a while. Doing so should get the sunblock out of the eye but it may not ease the burning for a while. While it won't help to remove the sunscreen, applying cool, wet compresses to the eyes may have a soothing effect. Eye drops such as ClearEyes may assist in rinsing out the eye, but it is likely they will burn.
Remember, even though the summer is nearing its end, it is advised to wear sunblock throughout the year to protect yourself from the dangers of ultraviolet rays.
Never allow small kids to put on lotion alone.


People swinging over to Orange County from the east coast might have missed seeing delis commonly around but they could just look over to Tustin and Anaheim for a taste of that at Bronx Sandwich Company which attempts the style with a little bit of California influence. The menu emphasizes their hot pastrami and other typical New York deli fare, and they piled the Dietz & Watson deli ingredients on high between deliciously crusty-yet-fluffy bread by OC Baking Company. It seems like their communities have really taken to them as well, providing quality hefty sandwiches for lunch and dinner with some new breakfast selections offered too. We were invited in for lunch one day to check out all of the tastiness they had to offer.
The Breakfast Sandwich ($8.99 - eggs, avocado, bacon, pastrami, and cheese) selections are available all day and read like any configurable breakfast plate with variations of bacon, sausage, pastrami, etc piled together with eggs and cheese. It is hearty and can easy fill you up in the morning or when you have that brinner craving. We liked how the eggs were presented in an omelette style, folded over for easy sandwich stacking and biting with falling all over the place as scrambled eggs would have. It's definitely one that will keep you going for a long while.
However, if you are aiming for heartiness during lunchtime, you can grab the heaping, popular Sloppy Bronx ($10.99 - thinly sliced beef, all beef hot link, melted American, Swiss, and Pepper Jack cheese, crispy fries, coleslaw, and spicy mayo) which is a monster of a sandwich with its piled-high fries. As if you needed more weight to each bite, the heaping of fries and generous drizzling of thick mayo make the Sloppy Bronx a loaded sandwich that pays tribute to loaded hot dogs. You would have to eat this one fresh for full effect though because the fries will get soggy under the sauce.
Opting for a lighter run, you might shoot for their Shrimp Po'Boy ($12.99 - jumbo shrimp, house butter sauce, lettuce, tomatoes, and mayo), another beast of a sandwich that did not wimp out on the number nor size of their shrimp. Big, bold, and beautiful, each curled crustacean had just the right amount of cornmeal batter enveloping it before being deep-fried and stacked tight. This was actually my favorite sandwich of the whole visit because of the bright flavors with the authentic po'boy feeling from the shrimp themselves. If you wanted to douse on some more richness to your sandwich, you can also get a side of their house sauce which is a seasoned, melted butter.
Despite their providing of a pretty good po'boy in a county where I can't find many, what Bronx is more known for with their typical clientele is their pastrami so we went on to grab their Pastrami Reuben ($10.99 - hot pastrami, Swiss cheese, Thousand Island dressing, and sauerkraut) on marbled rye. Their pastrami sandwiches, of which there are many variations, come with different quantity options that start at their standard half-pound of meat to three-quarter and even full pound. It was certainly flavorful and highlighted well with the sauerkraut beneath. If you are gunning for the reuben, don't forget to load up on the napkins because the hot pastrami was so juicy that it ran everywhere.
Another popular sandwich but on the different end of the spectrum in terms of sandwich styles is their Bronx Club ($9.99 - golden turkey, creamy Havarti cheese, crispy bacon, avocado, lettuce, tomatoes, and mayo) which I really enjoyed. Every sandwich shop needs a solid club sandwich, and Bronx really delivered here. The lettuce was crisp and bounteous, adding lovely texture to the soft turkey slices and smooth avocado. All of the pieces fell into play in a balanced way, and the bread just brought everything together perfectly.
Now, if the sandwiches don't fill you up for some reason, you could also indulge in their loaded fries - foil pie tins of fries smothered heavily with any assortment of accompaniments. We tried out the Spicy Alabama Fries ($8.99 - all beef hot link, melted jalapeno Jack cheese, grilled bell peppers, grilled onions, grilled jalapenos, and spicy mayo over crispy fries), an order that was a meal all of its own. Another popular version is their Manhattan Street Fries which uses string fries and has American cheese.
Since they're aiming for the New York deli feel, expect other sandwiches on their menu to represent those classics such as ones called The Mobster and The Philly Cheese. They also do give a nod to west coast sandwich preferences though; they offer options like their Caprese sandwich and The Babe, a turkey cayenne-pepper cheese ensemble. In keeping with the east coast deli feel, Bronx Sandwich Company also offers chips with your sandwiches but very particular ones - Zapp's, an east coast favorite. Dessert can come in the form of authentic Black & White Cookies shipped from New York itself!
If you're interested in visiting Bronx for some sandwich loving, find them at 13041 Newport Ave, Tustin, CA 92780 and 949 S. Euclid St. Anaheim, CA 92802. Don't forget to bring your appetite.


Caterlyst provides sales teams & marketers with unique customer insights, data clarity and precision campaigns using the power of our Foodservice, Ontrade & Convenience Universe. The result? Perfectly targeted sales and marketing campaigns and focus.
Our data visualisation tools give you all your key market facts, stats and performance indicators in one easy to use dashboard.
Our dashboards are simple to use tools that give you a complete oversight of your businesses key performance indicators from using Caterlyst. Drawing data from across all of your own data files and Caterlyst, the report dashboards give you deeper insight into sales and marketing operations and business performance for better decision making, revenue creation and customer service.
Curated news from around the market is published via our weekly newsletter. One news source that covers every sector.
Access detailed Companies House data against every limited company, Wholesaler and Multi Site Operator.
Easy to read and absorb, Quick Stats are snapshot reports on each core sector with consumer and operator stats summarised. Available to purchase online.
Menu trends, Operator Trends, Consumer Trends – we provide you with snapshot summaries and soundbites to keep you up to date. Available to purchase online.
We track newcomers, planning applications, changes of ownership and international new entrants to UK to give you a valuable source of new business opportunities.
Our data visualisation tools give you all your key market facts, stats and performance indicators in one easy-to-use dashboard, ensuring you have everything you need at a glance.
Our Dashboards are simple to use data visualisation tools that give you a complete oversight of your businesses key performance indicators from using Caterlyst. Drawing data from across all of your own data files and Caterlyst, the report dashboards give you deeper insight into sales & marketing operations and business performance allowing for better decision making, revenue creation and customer service.
Size: How big is your market? How many sites are there?
Structure: What does the competitive landscape look like?
Value: How much is each sector worth?
Penetration: How much share of each sector do you have?
Analyse Sales Data: We help you gain a new insight into your business and explore new opportunities. Our gap analysis process provides a detailed view of your market penetration and share of outlets.
Market Value by Sector: We calculate the value of the market overall using a detailed model that leverages outlet numbers, dayparts, average meal prices, number of meals served and regional variations to create a market read. Ideal for manufacturer's that don't have detailed sales outlet data but want an indicative value for their own products.
Where actual sales data by outlet is available we can create detailed analysis of the overall market opportunity by sector using the sales data as a base and working that against demographics held in Caterlyst.
We help you gain a new insight into your business and explore new opportunities. Our gap analysis process provides you with a detailed view of your market penetration and share of outlets and their potential value.
Our sales dashboard enables you to monitor, track and analyse your sales performance against targets in real-time by individuals, teams and your business as a whole. Quickly identify customers and prospects for up and cross selling opportunities to improve pipeline management and revenue forecasting. Identify who is working most effectively and who isn't.
By taking any existing data and running at Match2Caterlyst process we are able to highlight the gaps that exist and need to be filled. Gap analysis shows what % of sites by each sector you might be trading with or prospecting to against the full site universe.


text:
The Greek word KHARIS: "Undeserved Kindness"- New World Translation
"By this undeserved kindness(Greek "KHARIS"), indeed, you have been saved through faith, and this not owing to you, it is God's gift. "-Ephesians 2.8; New World Translation. Italics and words in brackets ours.
Somtimes the New World Translation is criticised for "going out of its way to be different." One Greek word which is rendered differently by the NWT Translation Committee, from 'mainline' translations(such as the King James, the New International Version and The New Revised Standard Version), is KHARIS which the NWT Translation Committee rendered, sometimes, as "underserved kindness." Is this an instance of the NWT Translation Committee "going out of its way to be different" from the above named translations which almost uniformly render it as "grace"? Or, rather, is this an instance where the New World Translation is superior to the above named translations? We think it is the latter. Please read the following which will show this to be so.
The New International Version: Keyword Study Bible in its "New Testament Lexical Aids" under the word KHARIS informs us:
"CHARIS...From its root, this word denotes that which causes joy, pleasure, that which creates delight in the recipient or observer. Hence, it is used with some latitude to mean gratification, thankfulness, gratitude or appreciation for a kindness granted or desired: a benefit, favor or gift: acceptance, approval, genorosity, open heartedness, or magnanimity. It was used especially to describe favors done without expectation of return. In reference to God we might understand it as the absolutely free expression of His loving-kindness to men, finding its only motive in His bounty and benevolence as the Giver: His unearned and unmerited favour. .....Meanings of charis:.....2. Grace, in act and deed, a favor conferred, a kindess, benefit, gift..."-p1686. italics ours
From Abbott-Smith's Manual Greek Lexicon of the New Testament we read, in part:
".....2 Subjectively, (a) on the part of the giver, grace, graciousness, kindness, goodwill, favour; esp. in the N.T. of the divine favour, grace, with emphasis on its freeness and universality.-italics ours.
The following is an excerpt from the article "Kindness" in the Insight on the Scriptures, Vol.2, page 153(© WTB&TS of Pennsylvania, 1988)
"Undeserved Kindness. The Greek word kha´ris occurs more than 150 times in the Greek Scriptures and is rendered in a variety of ways, depending on the context. In all instances the central idea of kha´ris is preserved-that which is agreeable (1Pe 2:19, 20) and winsome. (Lu 4:22) By extension, in some instances it refers to a kind gift (1Co 16:3; 2Co 8:19) or the kind manner of the giving. (2Co 8:4, 6) At other times it has reference to the credit, gratitude, or thankfulness that an especially kind act calls forth.-Lu 6:32-34; Ro 6:17; 1Co 10:30; 15:57; 2Co 2:14; 8:16; 9:15; 1Ti 1:12; 2Ti 1:3.
"On the other hand, in the great majority of occurrences, kha´ris is rendered "grace" by most English Bible translators. The word "grace," however, with some 14 different meanings does not convey to most readers the ideas contained in the Greek word. To illustrate: In John 1:14, where the King James Version says "the Word was made flesh . . . full of grace and truth," what is meant? Does it mean "gracefulness," or "favor," or what?
"Scholar R. C. Trench, in Synonyms of the New Testament, says kha´ris implies "a favour freely done, without claim or expectation of return-the word being thus predisposed to receive its new emphasis [as given it in the Christian writings] . . . , to set forth the entire and absolute freeness of the loving-kindness of God to men. Thus Aristotle, defining [kha´ris], lays the whole stress on this very point, that it is conferred freely, with no expectation of return, and finding its only motive in the bounty and free-heartedness of the giver." (London, 1961, p. 158) Joseph H. Thayer in his lexicon says: "The word [kha´ris] contains the idea of kindness which bestows upon one what he has not deserved . . . the N. T. writers use [kha´ris] pre-eminently of that kindness by which God bestows favors even upon the ill-deserving, and grants to sinners the pardon of their offences, and bids them accept of eternal salvation through Christ." (A Greek-English Lexicon of the New Testament, 1889, p. 666) Kha´ris is closely related to another Greek word, kha´ri·sma, concerning which William Barclay's New Testament Wordbook (1956, p. 29) says: "The whole basic idea of the word [kha´ri·sma] is that of a free and undeserved gift, of something given to a man unearned and unmerited."-Compare 2Co 1:11, Int.
"When kha´ris is used in the above sense, in reference to kindness bestowed on one who does not deserve it, as is true with the kindnesses extended by Jehovah, "undeserved kindness" is a very good English equivalent for the Greek expression.-Ac 15:40; 18:27; 1Pe 4:10; 5:10, 12."-end of quotation. All italics theirs.
The Twentieth Century New Testament at Ephesians 2.8 reads:
"For it is by God's loving-kindness(Greek: KHARIS)that you have been saved, through your faith. It is not due to yourselves: the gift is God's."-italics and words in brackets ours.
The New Testament in the Language of the People by Charles B. Williams reads:
"For it is by his unmerited favor(Greek: KHARIS)through faith that you have been saved; it is not by anything that you have done, it is the gift of God."-italics and words in brackets ours.
The Classic Greek Dictionary prepared by George Ricker Berry under KHARIS says:
"....II. grace or favour felt, either, 1. by the Doer, kindness, goodwill :..."-italics ours.
The NAS New Testament Greek Lexicon(here)states under its 2nd definition of the word:
"good will, loving-kindness, favour.
of the merciful kindness by which God, exerting his holy influence upon souls, turns them to Christ, keeps, strengthens, increases them in Christian faith, knowledge, affection, and kindles them to the exercise of the Christian virtues."-italics ours.
The NIV Theological Dictionary of New Testament Words states:
"Words formed from the Gk. root char- indicate things that produce well-being. Included in this word group is chara(joy), which is the individual experience or expression of this well being. (a)From this basic meaning of this root the individual meanings of charis are derived: e.g., grace, favor, beauty, thankfulness, gratitude, delight, kindness, benefit..."
Note that this comprehensive dictionary gives one of its range of meanings as "kindness."
Of interest is what John L. McKenzie in his Dictionary of the Bible wrote in the article "Grace":
"The verb charizesthai is comparatively(to KHARIS)weak in theological content. It means to grant freely as a favor....(Rm.8:32)....(Gal. 3:18.)-page 324.
The New World Translation at these places where the related word KHARIZESTHAI occurs reads "kindly give" and "kindly given." McKenzie goes on to show why he favours the translation of KHARIS as "grace," as a "better translation than "favor" or "goodwill."" The New World Translation, for the reasons already given above, thought that the English word "grace" was ambigous because of its wide semantic field. Hence, the New World Translation wanted, it appears, to have a "better translation" than "grace" or "favour."
We hope all of the above will go some way to inform those who wish to know why the New World Translation differs with the many English Bible translations that offer "grace" for the Greek word KHARIS; that it will dispel any un-warranted criticism of the New World Translation's treatment of this word; to show the good grounds for this translation's rendering and, lastly, to even show its superiority over the many English translations available today. The New World Translation has not "gone out of its way to be different" with other English Bible translations but have sought an accurate meaning of the original Bible words used by the inspired Bible writers. They succeeded in this by rendering the Greek word KHARIS in reference to God as "undeserved kindness."
advantages of the NWT index


text:
Measurements\Units\UnitVolume
===============

The `UnitVolume` class encapsulates units of measure for volume.

You typically use instances of `UnitVolume` to represent specific quantities of volume using the `Measurement` class.
Volume is a quantity of the extend of matter in three dimensions.
The SI accepted unit of volume is the liter (L), which is derived as one cubic decimeter (1 dm3).
Volume is also commonly expressed in terms of cubic meters (m3), gallons (gal), and cups (cup).
The base unit of `UnitVolume` is defined as liters.

* Class name: UnitVolume
* Namespace: Measurements\Units
* Parent class: [Measurements\Dimension](Measurements-Dimension.md)

Constants
----------

### SYMBOL_MEGALITERS

    const SYMBOL_MEGALITERS = "ML"

### SYMBOL_KILOLITERS

    const SYMBOL_KILOLITERS = "kL"

### SYMBOL_LITERS

    const SYMBOL_LITERS = "L"

### SYMBOL_DECILITERS

    const SYMBOL_DECILITERS = "dL"

### SYMBOL_CENTILITERS

    const SYMBOL_CENTILITERS = "cL"

### SYMBOL_MILLILITERS

    const SYMBOL_MILLILITERS = "mL"

### SYMBOL_CUBIC_KILOMETERS

    const SYMBOL_CUBIC_KILOMETERS = "km³"

### SYMBOL_CUBIC_METERS

    const SYMBOL_CUBIC_METERS = "m³"

### SYMBOL_CUBIC_DECIMETERS

    const SYMBOL_CUBIC_DECIMETERS = "dm³"

### SYMBOL_CUBIC_CENTIMETERS

    const SYMBOL_CUBIC_CENTIMETERS = "cm³"

### SYMBOL_CUBIC_MILLIMETERS

    const SYMBOL_CUBIC_MILLIMETERS = "mm³"

### SYMBOL_CUBIC_INCHES

    const SYMBOL_CUBIC_INCHES = "in³"

### SYMBOL_CUBIC_FEET

    const SYMBOL_CUBIC_FEET = "ft³"

### SYMBOL_CUBIC_YARDS

    const SYMBOL_CUBIC_YARDS = "yd³"

### SYMBOL_CUBIC_MILES

    const SYMBOL_CUBIC_MILES = "mi³"

### SYMBOL_ACRE_FEET

    const SYMBOL_ACRE_FEET = "af"

### SYMBOL_BUSHELS

    const SYMBOL_BUSHELS = "bsh"

### SYMBOL_TEASPOONS

    const SYMBOL_TEASPOONS = "tsp"

### SYMBOL_TABLESPOONS

    const SYMBOL_TABLESPOONS = "tbsp"

### SYMBOL_FLUID_OUNCES

    const SYMBOL_FLUID_OUNCES = "fl oz"

### SYMBOL_CUPS

    const SYMBOL_CUPS = "cup"

### SYMBOL_PINTS

    const SYMBOL_PINTS = "pt"

### SYMBOL_QUARTS

    const SYMBOL_QUARTS = "qt"

### SYMBOL_GALLONS

    const SYMBOL_GALLONS = "gal"

### SYMBOL_IMPERIAL_TEASPOONS

    const SYMBOL_IMPERIAL_TEASPOONS = "tsp Imperial"

### SYMBOL_IMPERIAL_TABLESPOONS

    const SYMBOL_IMPERIAL_TABLESPOONS = "tbsp Imperial"

### SYMBOL_IMPERIAL_FLUID_OUNCES

    const SYMBOL_IMPERIAL_FLUID_OUNCES = "fl oz Imperial"

### SYMBOL_IMPERIAL_PINTS

    const SYMBOL_IMPERIAL_PINTS = "pt Imperial"

### SYMBOL_IMPERIAL_QUARTS

    const SYMBOL_IMPERIAL_QUARTS = "qt Imperial"

### SYMBOL_IMPERIAL_GALLONS

    const SYMBOL_IMPERIAL_GALLONS = "gal Imperial"

### SYMBOL_METRIC_CUPS

    const SYMBOL_METRIC_CUPS = "metric cup Imperial"

### COEFFICIENT_MEGALITERS

    const COEFFICIENT_MEGALITERS = 1000000.0

### COEFFICIENT_KILOLITERS

    const COEFFICIENT_KILOLITERS = 1000.0

### COEFFICIENT_LITERS

    const COEFFICIENT_LITERS = 1.0

### COEFFICIENT_DECILITERS

    const COEFFICIENT_DECILITERS = 0.1

### COEFFICIENT_CENTILITERS

    const COEFFICIENT_CENTILITERS = 0.01

### COEFFICIENT_MILLILITERS

    const COEFFICIENT_MILLILITERS = 0.001

### COEFFICIENT_CUBIC_KILOMETERS

    const COEFFICIENT_CUBIC_KILOMETERS = 1000000000000.0

### COEFFICIENT_CUBIC_METERS

    const COEFFICIENT_CUBIC_METERS = 1000.0

### COEFFICIENT_CUBIC_DECIMETERS

    const COEFFICIENT_CUBIC_DECIMETERS = 1.0

### COEFFICIENT_CUBIC_CENTIMETERS

    const COEFFICIENT_CUBIC_CENTIMETERS = 0.01

### COEFFICIENT_CUBIC_MILLIMETERS

    const COEFFICIENT_CUBIC_MILLIMETERS = 0.001

### COEFFICIENT_CUBIC_INCHES

    const COEFFICIENT_CUBIC_INCHES = 0.0163871

### COEFFICIENT_CUBIC_FEET

    const COEFFICIENT_CUBIC_FEET = 28.3168

### COEFFICIENT_CUBIC_YARDS

    const COEFFICIENT_CUBIC_YARDS = 764.5549999999999

### COEFFICIENT_CUBIC_MILES

    const COEFFICIENT_CUBIC_MILES = 4168000000000.0

### COEFFICIENT_ACRE_FEET

    const COEFFICIENT_ACRE_FEET = 1233000.0

### COEFFICIENT_BUSHELS

    const COEFFICIENT_BUSHELS = 35.2391

### COEFFICIENT_TEASPOONS

    const COEFFICIENT_TEASPOONS = 0.00492892

### COEFFICIENT_TABLESPOONS

    const COEFFICIENT_TABLESPOONS = 0.0147868

### COEFFICIENT_FLUID_OUNCES

    const COEFFICIENT_FLUID_OUNCES = 0.0295735

### COEFFICIENT_CUPS

    const COEFFICIENT_CUPS = 0.24

### COEFFICIENT_PINTS

    const COEFFICIENT_PINTS = 0.473176

### COEFFICIENT_QUARTS

    const COEFFICIENT_QUARTS = 0.946353

### COEFFICIENT_GALLONS

    const COEFFICIENT_GALLONS = 3.78541

### COEFFICIENT_IMPERIAL_TEASPOONS

    const COEFFICIENT_IMPERIAL_TEASPOONS = 0.00591939

### COEFFICIENT_IMPERIAL_TABLESPOONS

    const COEFFICIENT_IMPERIAL_TABLESPOONS = 0.0177582

### COEFFICIENT_IMPERIAL_FLUID_OUNCES

    const COEFFICIENT_IMPERIAL_FLUID_OUNCES = 0.0284131

### COEFFICIENT_IMPERIAL_PINTS

    const COEFFICIENT_IMPERIAL_PINTS = 0.568261

### COEFFICIENT_IMPERIAL_QUARTS

    const COEFFICIENT_IMPERIAL_QUARTS = 1.13652

### COEFFICIENT_IMPERIAL_GALLONS

    const COEFFICIENT_IMPERIAL_GALLONS = 4.54609

### COEFFICIENT_METRIC_CUPS

    const COEFFICIENT_METRIC_CUPS = 0.25

Properties
----------

### $converter

    protected \Measurements\UnitConverter $converter

The converter used to represent the unit in terms of the dimension's base unit.

* Visibility: **protected**

### $symbol

    protected string $symbol

The symbolic representation of the unit.

* Visibility: **protected**

Methods
-------

### baseUnit

    mixed Measurements\BaseUnitConvertible::baseUnit()

Returns the base unit of the dimension.

* Visibility: **public**
* This method is **static**.
* This method is defined by [Measurements\BaseUnitConvertible](Measurements-BaseUnitConvertible.md)

### megaliters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::megaliters()

Returns the megaliters unit of volume.

* Visibility: **public**
* This method is **static**.

### kiloliters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::kiloliters()

Returns the kiloliters unit of volume.

* Visibility: **public**
* This method is **static**.

### liters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::liters()

Returns the liters unit of volume.

* Visibility: **public**
* This method is **static**.

### deciliters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::deciliters()

Returns the deciliters unit of volume.

* Visibility: **public**
* This method is **static**.

### centiliters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::centiliters()

Returns the centiliters unit of volume.

* Visibility: **public**
* This method is **static**.

### milliliters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::milliliters()

Returns the milliliters unit of volume.

* Visibility: **public**
* This method is **static**.

### cubicKilometers

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cubicKilometers()

Returns the cubic kilometers unit of volume.

* Visibility: **public**
* This method is **static**.

### cubicMeters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cubicMeters()

Returns the cubic meters unit of volume.

* Visibility: **public**
* This method is **static**.

### cubicDecimeters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cubicDecimeters()

Returns the cubic decimeters unit of volume.

* Visibility: **public**
* This method is **static**.

### cubicMillimeters

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cubicMillimeters()

Returns the cubic millimeters unit of volume.

* Visibility: **public**
* This method is **static**.

### cubicInches

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cubicInches()

Returns the cubic inches unit of volume.

* Visibility: **public**
* This method is **static**.

### cubicFeet

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cubicFeet()

Returns the cubic feet unit of volume.

* Visibility: **public**
* This method is **static**.

### cubicYards

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cubicYards()

Returns the cubic yards unit of volume.

* Visibility: **public**
* This method is **static**.

### cubicMiles

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cubicMiles()

Returns the cubic miles unit of volume.

* Visibility: **public**
* This method is **static**.

### acreFeet

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::acreFeet()

Returns the acre feet unit of volume.

* Visibility: **public**
* This method is **static**.

### bushels

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::bushels()

Returns the bushels unit of volume.

* Visibility: **public**
* This method is **static**.

### teaspoons

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::teaspoons()

Returns the tea spoons unit of volume.

* Visibility: **public**
* This method is **static**.

### tablespoons

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::tablespoons()

Returns the table spoons unit of volume.

* Visibility: **public**
* This method is **static**.

### fluidOunces

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::fluidOunces()

Returns the fluid ounces unit of volume.

* Visibility: **public**
* This method is **static**.

### cups

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::cups()

Returns the cups of volume.

* Visibility: **public**
* This method is **static**.

### pints

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::pints()

Returns the pints unit of volume.

* Visibility: **public**
* This method is **static**.

### quarts

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::quarts()

Returns the quarts unit of volume.

* Visibility: **public**
* This method is **static**.

### gallons

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::gallons()

Returns the gallons unit of volume.

* Visibility: **public**
* This method is **static**.

### imperialTeaspoons

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::imperialTeaspoons()

Returns the imperial tea spoons unit of volume.

* Visibility: **public**
* This method is **static**.

### imperialTablespoons

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::imperialTablespoons()

Returns the imperial table spoons unit of volume.

* Visibility: **public**
* This method is **static**.

### imperialFluidOunces

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::imperialFluidOunces()

Returns the imperial fluid ounces unit of volume.

* Visibility: **public**
* This method is **static**.

### imperialPints

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::imperialPints()

Returns the imperial pints unit of volume.

* Visibility: **public**
* This method is **static**.

### imperialQuarts

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::imperialQuarts()

Returns the imperial quarts unit of volume.

* Visibility: **public**
* This method is **static**.

### imperialGallons

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::imperialGallons()

Returns the imperial gallons unit of volume.

* Visibility: **public**
* This method is **static**.

### metricCups

    \Measurements\Units\UnitVolume Measurements\Units\UnitVolume::metricCups()

Returns the metric cups unit of volume.

* Visibility: **public**
* This method is **static**.

### __construct

    mixed Measurements\Unit::__construct(string $symbol)

Initializes a new unit with the specified symbol.

* Visibility: **public**
* This method is defined by [Measurements\Unit](Measurements-Unit.md)

#### Arguments
* $symbol **string** -
The symbolic representation of the unit.

### converter

    \Measurements\UnitConverter Measurements\Dimension::converter()

Returns the unit converter used to represent the unit in terms of the dimension's base unit.

* Visibility: **public**
* This method is defined by [Measurements\Dimension](Measurements-Dimension.md)

### getBaseUnit

    mixed Measurements\Dimension::getBaseUnit()

Returns the base unit of the dimension.

* Visibility: **public**
* This method is defined by [Measurements\Dimension](Measurements-Dimension.md)

### symbol

    string Measurements\Unit::symbol()

Return the symbolic representation of the unit.

* Visibility: **public**
* This method is defined by [Measurements\Unit](Measurements-Unit.md)

### isEqualTo

    boolean Measurements\Equatable::isEqualTo(mixed $other)

Returns a boolean value that indicates whether the receiver is equal to another given object.

* Visibility: **public**
* This method is defined by [Measurements\Equatable](Measurements-Equatable.md)

#### Arguments
* $other **mixed** -
The object with which to compare the receiver.

### __toString

    string Measurements\Unit::__toString()

Converts the unit to its string representation.

* Visibility: **public**
* This method is defined by [Measurements\Unit](Measurements-Unit.md)

redpajama_set_name: RedPajamaGithub


text:
Archive | December, 2015
A Frolicking and Festive Q&A
We close out this year with our annual romp beneath the mistletoe with some of our most popular UK LesFic authors, who very kindly took the time to discuss their reading highlights of the year, the books they're most looking forward to in 2016, and their traditional festive indulgences…
Clare had a busy old year in 2015. Not content with releasing two novels (This London Love, and the festive frolic, All I Want for Christmas), she continued to hosting her popular Lesbian Book Club over on the Lesbian Lounge, and appeared at LFest. Keep up to date with Clare, here at her blog.
– What was your favourite read of 2015 and why?
I read quite a few books in 2015, but two stuck in my head. The first was G Benson's All The Little Moments. It's a debut novel about a family dealing with grief and it had me in floods of tears – I mean, *sobbing*. But as well as being a family drama that put me through the wringer, there was romance, no shortage of humour and two gorgeous little kids running around the novel too. The characters stayed with me and continue to pop into my head months after reading it.
My second choice is a book written in 1969 but only read by me this year. It's called Patience And Sarah by Isabel Miller and it's the story of a love affair between two women in the 19th century and is loosely based on a true story. It's poetic, sublime, romantic and made me want to crawl inside the pages and just lie there, soaking it up. I loved every delicious word and plan on reading it again soon. If you haven't read it yet, do it!
– What's top of your reading wish list for next year?
I've interviewed loads of fab authors on my Lesbian Book Club podcast and quite a few have new books coming out next year. I'm particularly looking forward to new novels from British authors Angela Peach and HP Munro – we've been waiting a while, but I'm sure it'll be worth it! Also, Harper Bliss is planning on producing something every month, so she's going to be interesting to keep an eye on – I really liked her At The Water's Edge. It's going to be a stellar year I'm sure!
– What's your favourite seasonal traditional or indulgence?
I love Christmas and all its traditions. I love the invisible deadline whereby you have to see all your friends beforehand, so end up having dinner out for 20 days straight (it's already started for me). I love autumnal weather. I never get bored of hearing Wham!, Mariah, The Pogues & Kirsty MacColl. I love The Holiday, Elf, The Muppets Christmas Carol. I love buying presents, sending cards, inhaling tins of Quality Street and glugging mulled wine. But most of all, I love the excitement and anticipation of Christmas. The build-up is pure, blissful magic.
The Boxing Day hangover, though? Not so good.
HP lives in Edinburgh with her wife and a wauzer named Boo. Her début novel Silver Wings was shortlisted for the Golden Crown Literary Society Historical Fiction award in 2014, her second novel Grace Falls was published in Feb 2014, swiftly followed in late May by novel number three, Stars Collide.
It's been a good year for reading, as most of my favourite authors all published this year (some of them twice!) but I'm going to go with one that I sort of stumbled across. The Red Files by Lee Winter, had everything that I wanted and more. Action, suspense, and political drama. Not to mention my absolute favourite plotline of a love story -two protagonists who start out from a point of dislike who are thrown together to unravel a bit of a mystery.
In the interests of my own sanity I'd love to have a book out there next year, aside from that – non lesfic I'm impatiently waiting for Christopher Brookmyre's new book in January and lesfic wise I'll settle for all my favourite authors publishing again….twice!
What's your favourite seasonal traditional or indulgence?
My favourite thing about Christmas is my wife's face when I inevitably select the most humungous tree (last years was over 12ft) When we get it home I put on the festive music, crack open a bottle of bubbly and dress up in my Santa suit to decorate the house.
Karen Campbell
Karen has just published her fourth novel The Strange Adventures of Mavis Street, and won the Ultimate Planet (New) Author of the Year Award in 2014. Karen is Scottish, grumpy in the morning, supports Arsenal and Rangers, and drinks lots of Irn Bru. She is partial to a tattie scone and square sausage when she goes home. She likes music to be played loudly and is not keen on spiders. At all.
I don't read lesfic, although I did read The Paying Guests by Sarah Waters, which was good once I got past the 200 page mark. I found it slow to begin but she writes beautifully so I didn't mind. My favourite book I read this year was called All My Friends Are Superheroes by Andrew Kaufman.
I am getting a Jeanette Winterson book for Christmas called The Gap of Time. It is a reworking of Shakespeare's A Winter's Tale. I love Jeanette, she is my favourite
author in the whole wide world.
I don't have any. I am the only Scottish person I know who doesn't get drunk at Hogmanay. I participate in Christmas for other people, I don't care one way or the other. It's nice to see my nephews happy but other than that, I think the message has been lost. We need to be kind and thoughtful all year.
Jenny hails from the small town of Motherwell in Scotland, where she lives with her partner, Lou, and their well loved and very spoiled dog. She made her lesfic début in 2015 with A Royal Romance, and her second novel Heart of the Pack is due to be published in May, 2016.
I'm way, way, behind on my 2015 reading list, but of the ones I've gotten through I enjoyed, Playing In Shadow by Lesley Davis, and Just Three Words by Melissa Brayden, and The Romance Vote by Ali Vali. Playing In Shadow I really enjoyed because it had lots of elements I really enjoy, including video games references and gothic rock. Just Three Words is a sweet book. So utterly romantic that it makes you swoon. The Romance Vote was really enjoyable to read. I knew next to nothing about the American political system, and I came away from the book with a little bit more of an insight into it. The second thing thing that made it so great was the deliciously handsome butch character, which you can always be sure to find in a Ali Vali book.
What's top of your reading wish list for next year?
I'm hoping to catch up on my reading list over Christmas and the New Year, and first on the list is, Ready or Not by Melissa Brayden, and Radclyffe's Prescription For Love.
Terry's Chocolate Orange. Yum yum!
Andrea Bramhall
Andrea is a Stockport native who now runs a campsite in Deepdale, and is planning a move to the Lake District in the not too distant. Somehow she finds time to write novels and scuba dive! Her second novel, Clean Slate, scooped the 2014 Lambda Literary award for best lesbian romance. Her sixth novel, Collide-O-Scope is due to be published by Ylva in 2016.
The Red Files, by Lee Winter. Funny, good mystery, great characters, and some pretty hot love scenes. Well worth a read.
Top of my reading list for next year – hmmm, tricky. There are so many books on my "to read pile" right now. Building a house is not conducive to keeping up to date with new releases. But I'm really looking forward to Michelle Grubb's upcoming release The Fifth Gospel. I've really enjoyed Michelle's previous two books, so I'm excited about this next one.
Fave seasonal piece – I don't really have a fab seasonal book. I like to spend time with my family and friends so I spend more time away from books at this time of year than any other. We do have a sort of tradition though. On Christmas Eve my partner and I watch Christmas movies…lots of them, but A Christmas Carol is always one of them. Used to be the old black and white one, but we've modernised. Patrick Stewart as Scrooge works best now.
Manda Scott's first novels were a series of critically acclaimed crime stories featuring lesbian detective Kellen Stewart, and her debut Hen's Teeth was short-listed for the Orange Prize. More recently she has been better known for her best-selling historical novels – the Boudica Series and then the Rome spy thrillers set in the same era. Into the Fire published in 2015 is a historical thriller linking arson attacks in modern-day France with the story of Joan of Arc.
My favourite read is always the most recent – which is Spy Games by Adam Brookes. It's not remotely lesbian, but it's an exceedingly good spy thriller, one of the best I've ever read. This man really is the new Le Carré.
Of the rest, Tuesday Falling was excellent (by S Williams) and I always love the work of Andrew Taylor: his most recent A Silent Boy is exceptional. Non-fiction would have to be This Changes Everything by Naomi Klein and in the light of the Paris climate talks, this has to be required reading for everyone, along with The Sixth Extinction by Elizabeth Kolbert. If you haven't read both, they're essential.
The new Neil Gaiman, whatever that is. The new Andrew Taylor, whatever that is. The new Imogen Robertson…
Christmas indulgence… I give myself a week of reading between the solstice and the end of the month – which is sheer, unencumbered indulgence and gets me through the seasonal hostilities. I'm really, really looking forward to this.
VG Lee
VG Lee is a fond favourite of many a lesbian fiction reader. Her first novel Diary of a Provincial Lesbian was a treasure back in the days when lesbian fiction was thin on the ground. And now in more plentiful times, her work
stands out for its quality, comedy and poignancy. Sarah Waters described her most recent book, Always You Edina, as "A real treat of a novel". As a judge of the Polari First Book Prize, VG samples a good selection of queer fiction and her recommendations are always worth heeding.
I re-read Carol by Patricia Highsmith as the film was due out. I'd feared that it might sound dated but quite the contrary. It's a great, exquisitely written book – the characters aren't particularly likeable but that seems very in keeping with much of the fiction today. Haven't seen the film yet but the book would make a great Christmas present.
– Which novel is top of your wish list for next year?
Delirium, the Rimbaud Delusion by Barbara Scott Emmett. Now I'm not sure if this is lesfic as I've only heard a short section from it when the author, Barbara Scott Emmett was chosen from the Polari Workshop in Newcastle to read at the evening event. It did sound as if there is at least a lesbian element in it. The piece the author chose to read out captured the entire audience and I've now ordered the novel on Amazon.
I may have mentioned this before but I spend the whole of Boxing Day in bed with Christmas present books and cheese and pickled onion sandwiches for lunch and dinner. Pickled onions courtesy of author Rose Collis!
Kiki Archer
After a year out screenplay writing, the original lesbian chicklit favourite came back this year with a scorcher of a novel. Too Late I Love You smashed the lesbian fiction charts and had a foray into the contemporary fiction charts too. Rumour has it that a glitzy novel is on its way for next year.
Melissa Brayden's Just Three Words. It's the second in the Soho Loft Series and focuses on Hunter and Sam, two friends, work colleagues and house mates who risk everything when desire takes hold. I loved the book because it portrayed a growing shift of feelings between friends. Come on, we've all been there – that friend who's a friend, until they're not.
I have so many I need to catch up on, but top of the list is Getting Back by Cindy Rizzo. Cindy excels when writing strong and powerful women and I love the idea of a novel focused on the publishing industry and changes within it.
Christmas is my favourite time of year. The tree is always up by December 1st, the house is swamped in festive lights and carols are played on repeat. As for indulgence it has to be tree chocolates. It's the naughtiness of announcing to the children they cannot be pinched without permission… and the minute they're in bed that's exactly what I do. No one in the family knows I've replaced the whole batch three times already.
A massive thank you to each of our participating authors – we hope they've given you plenty of ideas for stocking fillers! All that remains for Tig and I to do is wish everyone a very happy Christmas and a peaceful 2016. We'll be back with more news, guest blogs, and features in January.
Tags: Andrea Bramhall, Clare Lydon, HP Munro, Jenny Frame, Karen Campbell, Kiki Archer, Manda Scott, VG Lee
News Roundup: awards, events, new books, freebies and more!
It's time for the last post of 2015!
Apart from the next post that is, which is our fabulous best of 2015 lesfic as chosen by several wonderful UK lesfic authors. But apart from that, here's the last post of the year!
And firstly massive congratulations to that Cari Hunter whose No Good Reason has made off with the Rainbow Award for Best Lesbian Mystery/Thriller. The awards organiser Elisa Rolle was tickled to make out the award certificate: "Cari Hunter has been awarded… for No Good Reason". But actually there were very good reasons and the book was judged to be "Brilliant" and "A fabulous mystery". More details and fine words about the book here.
And if you've had the good sense to have read No Good Reason already, you are in luck because book two of The Dark Peak series, Cold to the Touch, is now available on Amazon.
The Velvet Lounger at the Lesbian Reading Room has been quick off the mark and reviewed Book 2 already:
"Cari Hunter writes decidedly good stories. She combines excellent plot lines, which twist and turn, with crime drama and just the right amount of thriller to keep us on the edge of our seats. Each book feels distinctive, enjoyably new and refreshingly different to standard crime dramas. Cold to the Touch is a sequel to the excellent No Good Reason, and fans of Sanne and Meg will love where she takes them this time. Cold to the Touch is more than strong enough to stand alone, but why miss an excellent series?"
You can read the spoiler-free review here.
Congratulations also to Jody Klaire whose Blind Trust was runner up in the Rainbow Awards in the Best Lesbian Mystery/Thriller category. Jody is on Book Three of the Above and Beyond series and you can get a sneak peek at Untrained Eye on her website.
Speaking of awards, The Ultimate Planet Awards are now open for voting. The awards were created to recognise, thank and promote the work of grass-roots event organisers and community businesses who improve the lesbian, bi and queer scene.
There are three categories related to lesfic: Independent Author with nominees Dawn Carter, Karen Campbell, Kiki Archer and Sally Edwards. Publishing House Author with LT Smith, Sarah Waters and VG Lee. And LBQ Book nominees Diary of a Broken Heart by Karen Campbell, Murder by Proxy by Dawn Carter, The Paying Guests by Sarah Waters and Too Late I Love You by Kiki Archer. Good luck to all the nominees and get voting here.
On to reviews, and The Lesbian Review has been busy. First up is Clare Lydon's All I Want for Christmas. The review site says:
"All I Want For Christmas by Clare Lydon is a must-read Christmas novel. It will fill you with holiday cheer and make your heart sparkle with twinkly lights.
It is the story of Tori who, exactly a month before Christmas, decides that all she wants for Christmas is someone to love. This ensues in a delightful romantic romp through bad dates, missed opportunities and long lost loves returning to her life."
You can read the full review here and if you fancy buying a signed copy for Christmas then scuttle over here before last post.
Jen Silver's Starting Over is also reviewed:
"The book starts off with one of the most awkward and hilarious visits that I have ever read… This is a gentle read that explores the intricacies of a relationship and what it means to different people. It's an awesome read for people who like happy endings and for those who like to take a peek into other people's lives."
Read the full review here.
A bit of blogging and chatting now.
It's good to hear that Catherine Hall, author of The Repercussions, is working on a new novel. She did a rare blog recently about getting back in the saddle and her writing routine:
"I've been accused before of obsession, of being compulsive about order, my habits, my routines, and I think there's probably some truth in it. But to get to the marathon end of a novel, a certain amount of obsession is required. You have to protect your time to write it from all the other people and things that make their demands. You have to really care about this thing that you're creating, enough to keep going for as long as if takes, going back to it day after day, facing your own imperfections, your lack of talent, nitpicking over words, checking details, historical fact. It's horrible, it's exhausting, it's fantastic."
Meanwhile, Cari Hunter has been ruminating about why she writes what she writes. Why crime and why lesfic?
"When I put pen to paper at the start of No Good Reason, I didn't really consider my motives. Crime has long been a favourite genre of mine, and I had thoroughly enjoyed getting my teeth stuck into the police procedural aspects of my third novel Tumbledown, so it seemed like a natural step to try my hand at writing a fully fledged crime novel. I also craved the opportunity to write a series, and a format where a fresh case could be investigated by recurring protagonists fitted that bill nicely."
Read on here.
And Jenny Frame, author of A Royal Romance, was interviewed over on Lynn Lawler's site. Jenny talks about why she started writing, her background and her inspiration behind A Royal Romance. There's also a sneak preview of her forthcoming book Heart of the Pack – A Wolfgang County Novel.
Rebecca Buck has a new short story set in the roaring twenties and, at the moment, it is free on the Bold Strokes Website! Here's the blurb.
In 1927, Evadne Burns invites her closest school friends to join her for a weekend reunion at her grand home, Winter Manor. The passing of time and the dark shadow of the First World War has shaped them all as women, yet their friendships remain strong. The tragedy of the era has only made them more determined to live their lives to the full.
Evadne is delighted to see Clara and Courtney again, two women dedicated to each other since they were schoolgirls and still unable to keeps their hands off each other, even in view of Winter's servants. There is the more conservative Madge, to remind them of the life they were expected to lead. But most of all, Evadne is pleased to see Edith Richardson, with whom she shared one precious night but left a lasting connection. With Edith, she chooses to share a secret that will affect the rest of their lives, together or apart.
Rebecca's forthcoming novel, Fragile Wings, set in the same era is also available for pre-order on the site. And she also blogs about the Great War over on the Bold Strokes Author Blog site.
Ke Payne has a release date for her next novel, When I Knew You. It's her second adult romance (after Once The Clouds Have Gone). It's just been through its final edit stage and will be published by Bold Strokes in March. Here's the blurb:
When Ash Wells and Nat Braithwaite are thrown together after seventeen years apart, old resentments and passions are rekindled. The days of their heady teenage relationship are long gone – or are they? As they put aside their differences to honour the memory of a friend, Ash and Nat learn that sometimes, to build a future, you have to be willing to let go of the past.
Ke will be with us in the new year to tell us about her latest book.
A little way in the future yet but some early notice from VG Lee about a Gaia Women Tutored Writing Retreat next September in Scotland. The event runs from 5th to the 10th. VG will be the resident tutor supplying advice and running the writing workshop covering the novel.
There will also be a second tutor overseeing the short story section. For more information on the retreat see the Gaia Woman website.
On to more best-selling authors and their favourite picks.
Sarah Waters was recently interviewed at the Cinema Museum in London about her Desert Island Movies. Here's her list. And while you're on her website check out the details for the theatre adaptation of The Night Watch starting in May in Manchester.
Manda Scott has been picking her favourite books of the year over on her website. She's picked the best of her reads from fantasy to World War II fiction. See the full list here and there's more from Manda in our best-of-2015 Q&A!
Finally the fabulous Women and Words are running their Hootenanny so nip over there every day for the chance to win in the massive lesfic giveaway!
Tara a bit!
Tags: Cari Hunter, Catherine Hall, Clare Lydon, Jen Silver, Jenny Frame, Jody Klaire, KE Payne, Manda Scott, Rebecca Buck, Sarah Waters, The Rainbow Awards, Ultimate Planet Awards, VG Lee, Women & Words


Today, my close friend, Fay Lamb, joins us to talk about her newest release, Storms in Serenity. Let's start at the beginning.
Fay: When I say that I have always wanted to write, I mean that my earliest memories are of story. As a child, I told stories. I had children in the neighborhood act out plays. As a teenager in high school, classmates knew me as a writer. I believe I still hold the record for the most English credits by one student. My handwriting is atrocious because I spent hours as a teenager writing stories in notebooks. One of my friends shares that passion, and we wrote together or worked on telling a story. She'd start and stop at a point, and I would pick up. I would have rather been doing something story related than to have breathed back then. I carried the desire into my early twenties where it only grew more important to me as I realized that if God placed this yearning for story in me, I had a responsibility to give Him my all.
I wrote stories in notebooks also. How about now?
Fay: I do write every day. I have to confess that it isn't always fiction. I wear a lot of hats: bookkeeper, housekeeper, wife, mother, writer, editor … I sometimes have to pull away from my fiction until I can get the roles balanced enough for me to put on my writer's cap. But when I do settle down to a story, I tend to write daily, and when it is finished, I'll edit daily as well.
You're so disciplined! Does this carry over to marketing as well?
Fay: One in which I don't have to market. Only kidding. I've struggled with marketing, but I still work at it. My publisher has a great marketing team. I'm a member of that team along with each of Write Integrity Press authors. We work at sharing each other's promotions and trying to stay away from the dreaded self-promotions. I like working with others and helping others, and I do that with the promotions of not only the Write Integrity authors but of other authors whose work I consider worthwhile. It doesn't seem so much like marketing if you're posting interviews with other authors. Likewise, I have The Tactical Editor blog in which I share everything from editing advice, to writing advice, and even encouragement.
With that said, I guess my favorite type of promotion is actually away from the computer. I teach at conferences. I'm always antsy while trying to prepare for the workshop or classes, but God seems to put it all in place. I'm not a great speaker, but I hope that my passion for fiction pours out when I talk about it.
I've been in your classes, and you're a better speaker than you think 🙂 You have a lot on your plate.
Tell us what project you're currently working on.
Fay: I have a couple of projects right now. I am a managing editor for a new magazine that premiers in June. Imaginate is a place where artists of all genres can share their imaginations with readers.
Novel-wise, I'm writing the next book in the Amazing Grace series, Everybody's Broken. It's a romantic suspense that centers around the brokenness caused by one man's death and what he was to those who knew him and loved him best. His murder has his widow and their two boys on the run where they end up in his hometown with his family that he never told her he had.
Sounds like another exciting story! Last question.
Have you ever had an interesting experience connected with being an author?
Fay: I fondly recall the 2010 American Christian Writers Conference. From about 1999 to 2003, I had stopped writing with an intent to publish. I'd had an agent, whom I will not name, hurt me badly with something he said, and I sunk into a deep writer's depression. When I came out of it in 2003, I was still very much unhappy with this particular agent, but I had determined that I was going to prove him wrong. So I began to study the craft, and in 2010 with my first finished novel in years, I was up for the Genesis award at ACFW.
That's when the Lord started working on my heart. In particularly, He challenged me about my bitterness toward the agent. I knew that when I attended ACFW that year, this agent would be there, and God was prompting me to talk to him.
I didn't want to do that. He could stay in his corner, and I'd stay in mine.
God didn't leave me alone about that. So, I challenged God to really show me that I needed to talk to the guy.
I drove to Indianapolis that year, and I was so excited. I was going to catch up with a dear friend. Well, that friend knew about my problems with the agent because she was there when he devastated me with his words. Dear friend rushes to my car before I can give my key to the valet. She whispers to me that the agent I so want to avoid is in the car behind me.
No one has ever declared me pliable. I have a strong will, and like He did with Peter, God has to keep confirming what He wants me to do. I prayed and asked God to clarify His intent.
Mr. Agent follows me into the hotel, and is standing in line behind me.
Not to be outdone by Peter, I need that third clarification. I refuse to even look at the man behind me.
The next day, I meet up with my wonderful writing mentor for lunch, and I'm compelled to tell her the back story about me and Mr. Agent. She sits back in her seat and informs me that he's her agent, and I really need to talk to him.
I'm not about to tell God that I need another bit of encouragement to do His will. That evening I step into the agent panel. I sit through the entire session. I sit through the long line waiting to talk to Mr. Agent until finally we're the only two people in the room.
I told him his exact words–the ones that bitterness had etched onto my heart.
What was he going to do after that, tell me no? Instead, he tells me to be sure to write in the query letter that I'm the one who shamed him at the ACFW Conference.
I'm not sure if that was a good thing or a bad thing. I was too frightened to ask.
Wow. God certainly has a way of working all things to good. Thanks, Fay, for stopping in today! If you'd like to win an autographed copy of Storms in Serenity, please leave a comment and we'll enter you into the drawing.
A hurricane is barreling toward Serenity Key, but the town is already dealing with another storm brewing on the island, and it has nothing to do with atmospheric pressure. Jake New has a secret he's guarded for thirty years, and a spiritual tempest is about to lay it bare.
When the daughter he has never met is reported missing, apparently the victim of a hideous crime, and the lives of others he loves begin to unravel, Jake learns that the sins he thought so personal weren't so private after all. The consequences are wreaking havoc in ways he never dreamed possible.
Fay Lamb is an author, editor, and writing coach. Her emotionally charged stories remind the reader that God is always in the details. Fay has contracted three series. Stalking Willow and Better than Revenge, Books 1 and 2 in the Amazing Grace romantic suspense series are currently available for purchase. Charisse and Libby the first two novels in her The Ties That Bind contemporary romance series have been released. Fay has also collaborated on three romance novellas: The Christmas Three Treasure Hunt, A Ruby Christmas, A Dozen Apologies, and the newest adventure The Love Boat Bachelor. Her adventurous spirit has taken her into the realm of non-fiction with The Art of Characterization: How to Use the Elements of Storytelling to Connect Readers to an Unforgettable Cast.
Storms in Serenity (release February 2015), is the first novel in her Serenity Key series.
Wow – what a story. Thank you for sharing it!
Great interview Jen and Fay. I didn't know the story about the agent. This is such an encouraging story! Fay I thought you were just born a great writer. Didn't know you went through the fire like so many good writers. There's hope for me!


text:
Al-Anon/Alateen Groupes Familiaux s'adresse aux membres de la famille et aux amis et aux proches d'alcooliques qui souffrent de la maladie de ces derniers, qu'ils  boivent encore ou non ; il n'est pas destiné aux alcooliques eux-mêmes.

Les Groupes Familiaux Al-Anon comprennent Al-Anon pour les adultes et Alateen pour les adolescents. Les groupes pour Adultes Enfants d'Alcooliques font partie d'Al-Anon depuis la Conférence mondiale de 1984. À distinguer des groupes EADA («Enfants Adultes de familles Dysfonctionnelles ou Alcooliques») et des ACA ou ACOA («Adult Children of Alcoholics» ) qui sont des groupes différents des groupes Al-Anon/Alateen.

Le fonctionnement des Groupes Familiaux Al-Anon est basé sur le programme des Douze Traditions des Alcooliques Anonymes (AA). Les Al-Anon/Alateen utilisent le programme de rétablissement en Douze étapes des AA, adapté pour eux.

Alateen s'adresse aux jeunes entre 12 et 18 ans affectés par l'alcoolisme d'une personne proche. Le programme est adapté à des adolescents. Les réunions Alateen sont en général organisées par les adolescents eux-mêmes. Les membres Alateen tiennent leurs propres réunions, guidés par un membre Al-Anon adulte, ce qui est très important pour qu'un groupe Alateen soit validé et pour favoriser la croissance de ses membres.

Un peu d'histoire
Lois Wilson, épouse du cofondateur d'Alcooliques anonymes aux États-Unis, Bill Wilson, fonda Al-Anon avec d'autres parents et amis de membres AA au début des années 1950. Avant la création d'Al-Anon, il n'était pas rare que les membres de la famille ou les amis partagent les réunions des alcooliques en rétablissement, au sein des Alcooliques anonymes. Cependant, il devint vite évident que les deux groupes, les alcooliques en rétablissement d'une part, leurs amis et les membres de la famille de l'autre, ressentaient le besoin de se retrouver séparément.

Fonctionnement
Les Douze Étapes, les Douze Traditions et les Douze Concepts sont les piliers du programme Al-Anon. Pour assister aux réunions, la seule condition est qu'il y ait un problème d'alcoolisme chez un parent ou un ami. Il n'est pas demandé de frais d'inscription ni de cotisation pour être membre.

Diffusion
Aujourd'hui dans le monde, il y a plus de  Al-Anon et Alateen (dont plus de 200 en France) répartis dans 112 pays.

Voir aussi

 Alcooliques anonymes

Liens externes

 Site Al-Anon/Alateen des Services Mondiaux
 Site officiel Al-Anon/Alateen en France
 Site officiel Al-Anon/Alateen de Suisse romande et italienne

Champ connexe à la psychologie
Programme des Douze Étapes
Abus d'alcool
Organisme fondé en 1951

redpajama_set_name: RedPajamaWikipedia


This Application is for Budhha Quotes. All data is coming from remote server. Quotes shows quotes randomly, favorite your quotes. Show quotes filtered by category, vocation, author etc. You can share any quote and application by social sites and other apps.


text:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ClientDependency.Core.FileRegistration.Providers;
using ClientDependency.Core.Config;
using System.Web.UI;
using System.Web;

namespace ClientDependency.Core.FileRegistration.Providers
{
    public class LazyLoadRenderer : BaseRenderer
    {
        public LazyLoadRenderer()
        {
            PlaceholderParser.PlaceholderReplaced += PlaceholderParserPlaceholderReplaced;
            PlaceholderParser.AllPlaceholdersReplaced += PlaceholdersReplaced;
        }

        /// <summary>
        /// This is used to ensure we render the lazy load script once before either the lazy js or css is rendered.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        /// <remarks>
        /// See comments in PlaceholdersReplaced for more details
        /// </remarks>
        static void PlaceholderParserPlaceholderReplaced(object sender, PlaceholderReplacementEventArgs e)
        {
            //if the replacement was for this renderer
            if (e.RegexMatch.Groups.Count > 1 && e.RegexMatch.Groups[1].ToString() == DefaultName)
            {
                //we will pre-pend a special token above this output so we can detect it in the PlaceholdersReplaced event
                // and we'll tag the current http context with a key so we can detect that this reques is for us
                e.HttpContext.Items[PlaceholderReplacementProcessing] = true;
                e.ReplacedText = LazyLoadScriptPlaceholder + e.ReplacedText;
            }
        }

        /// <summary>
        /// This allows us to ensure that the lazy load script is placed higher in the rendered html than either the css or the js rendered to the page.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        /// <remarks>
        /// TO accomplish this we detect if the http context has a special key (PlaceholderReplacementProcessing), if so we'll replace the first encountered
        /// token with the lazy load script and replace any other ones with empty text (so it is only loaded once). We need to do this because we have no
        /// idea if the developer has rendered the lazy css or lazy js first.
        /// </remarks>
        static void PlaceholdersReplaced(object sender, PlaceholdersReplacedEventArgs e)
        {

            if (e.HttpContext.Items[PlaceholderReplacementProcessing] is bool
                && (bool)e.HttpContext.Items[PlaceholderReplacementProcessing])
            {
                var url = GetWebResourceUrl(typeof(LazyLoadProvider), DependencyLoaderResourceName);
                var lazyScriptTag = string.Format(HtmlEmbedContants.ScriptEmbedWithSource, url, "");

                //replace the first occurance
                e.ReplacedText = e.ReplacedText.ReplaceFirst(LazyLoadScriptPlaceholder, lazyScriptTag);
                //replace the rest with nothing
                e.ReplacedText = e.ReplacedText.Replace(LazyLoadScriptPlaceholder, "");

                //set the flag to null so we don't process again
                e.HttpContext.Items[PlaceholderReplacementProcessing] = null;
            }
        }

        private const string LazyLoadScriptPlaceholder = "<!--[Javascript:Name=\"LazyLoadRenderer_LazyLoadScript\"]//-->";
        private const string PlaceholderReplacementProcessing = "LazyLoadRenderer_Processing";

        public const string DefaultName = "LazyLoadRenderer";

        public override void Initialize(string name, System.Collections.Specialized.NameValueCollection config)
        {
            // Assign the provider a default name if it doesn't have one
            if (string.IsNullOrEmpty(name))
                name = DefaultName;

            base.Initialize(name, config);
        }

        /// <summary>Path to the dependency loader we need for adding control dependencies.</summary>
        protected const string DependencyLoaderResourceName = "ClientDependency.Core.Resources.LazyLoader.js";

        private static readonly object Locker = new object();

        /// <summary>
        /// This is silly to have to do this but MS don't give you a way in MVC to do this
        /// </summary>
        /// <param name="type"></param>
        /// <param name="resourceId"></param>
        /// <returns></returns>
        private static string GetWebResourceUrl(Type type, string resourceId)
        {
            if (type == null) throw new ArgumentNullException("type");
            var page = new Page();
            return page.ClientScript.GetWebResourceUrl(type, resourceId);
        }

        /// <summary>
        /// Renders many Js dependencies.
        /// </summary>
        /// <param name="jsDependencies"></param>
        /// <param name="http"></param>
        /// <param name="htmlAttributes"></param>
        /// <returns></returns>
        protected override string RenderJsDependencies(IEnumerable<IClientDependencyFile> jsDependencies, HttpContextBase http, IDictionary<string, string> htmlAttributes)
        {
            var asArray = jsDependencies.ToArray();

            if (!asArray.Any())
				return string.Empty;

            var sb = new StringBuilder();
            var strClientLoader = new StringBuilder();

            if (http.IsDebuggingEnabled || !EnableCompositeFiles)
			{
                foreach (var dependency in asArray)
				{
                    strClientLoader.Append("CDLazyLoader");
                    strClientLoader.AppendFormat(".AddJs('{0}')", dependency.FilePath);
                    strClientLoader.AppendLine(";");
				}
			}
            else if (DisableCompositeBundling)
            {
                foreach (var dependency in asArray)
                {
                    RenderJsComposites(http, htmlAttributes, strClientLoader, Enumerable.Repeat(dependency, 1));
                }
            }
            else
			{
                RenderJsComposites(http, htmlAttributes, strClientLoader, asArray);
            }

            sb.Append(string.Format(HtmlEmbedContants.ScriptEmbedWithCode, strClientLoader));

            return sb.ToString();
        }

        protected override void RenderJsComposites(HttpContextBase http, IDictionary<string, string> htmlAttributes, StringBuilder sb, IEnumerable<IClientDependencyFile> dependencies)
        {
            var comp = ClientDependencySettings.Instance.DefaultCompositeFileProcessingProvider.ProcessCompositeList(
                    dependencies,
                    ClientDependencyType.Javascript,
                    http,
                    ClientDependencySettings.Instance.CompositeFileHandlerPath);

            foreach (var s in comp)
            {
                sb.Append("CDLazyLoader");
                sb.AppendFormat(".AddJs('{0}')", s);
                sb.AppendLine(";");
            }
        }

        /// <summary>
        /// Renders many Css dependencies.
        /// </summary>
        /// <param name="cssDependencies"></param>
        /// <param name="http"></param>
        /// <param name="htmlAttributes"></param>
        /// <returns></returns>
        protected override string RenderCssDependencies(IEnumerable<IClientDependencyFile> cssDependencies, HttpContextBase http, IDictionary<string, string> htmlAttributes)
        {
            var asArray = cssDependencies.ToArray();

            if (!asArray.Any())
                return string.Empty;

            var sb = new StringBuilder();
            var strClientLoader = new StringBuilder();

            if (http.IsDebuggingEnabled || !EnableCompositeFiles)
            {
                foreach (var dependency in asArray)
                {
                    strClientLoader.Append("CDLazyLoader");
                    strClientLoader.AppendFormat(".AddCss('{0}')", dependency.FilePath);
                    strClientLoader.AppendLine(";");
                }
            }
            else if (DisableCompositeBundling)
            {
                foreach (var dependency in asArray)
                {
                    RenderCssComposites(http, htmlAttributes, strClientLoader, Enumerable.Repeat(dependency, 1));
                }
            }
            else
            {
                RenderCssComposites(http, htmlAttributes, strClientLoader, asArray);
            }

            sb.Append(string.Format(HtmlEmbedContants.ScriptEmbedWithCode, strClientLoader));

            return sb.ToString();
        }

        protected override void RenderCssComposites(HttpContextBase http, IDictionary<string, string> htmlAttributes, StringBuilder sb, IEnumerable<IClientDependencyFile> dependencies)
        {
            var comp = ClientDependencySettings.Instance.DefaultCompositeFileProcessingProvider.ProcessCompositeList(
                    dependencies,
                    ClientDependencyType.Css,
                    http,
                    ClientDependencySettings.Instance.CompositeFileHandlerPath);

            foreach (var s in comp)
            {
                sb.Append("CDLazyLoader");
                sb.AppendFormat(".AddCss('{0}')", s);
                sb.AppendLine(";");
            }
        }

        protected override string RenderSingleJsFile(string js, IDictionary<string, string> htmlAttributes)
        {
            if (!js.StartsWith("'"))
                js = string.Format("'{0}'", js);

            var strClientLoader = new StringBuilder("CDLazyLoader");
            strClientLoader.AppendFormat(".AddJs({0})", js);
            strClientLoader.Append(';');

            return string.Format(HtmlEmbedContants.ScriptEmbedWithCode, strClientLoader.ToString());
        }

        protected override string RenderSingleCssFile(string css, IDictionary<string, string> htmlAttributes)
        {
            var strClientLoader = new StringBuilder("CDLazyLoader");
            strClientLoader.AppendFormat(".AddCss('{0}')", css);
            strClientLoader.Append(';');

            return string.Format(HtmlEmbedContants.ScriptEmbedWithCode, strClientLoader);
        }
    }
}