text:
Use promo code dabperfect and receive 30% off your next online purchase
Use Promo Code at checkout for online discount
Slyng.com is the most premium and trusted online resource for promotional codes, discount codes, coupon codes, free shipping, offers and savings across over thousands of stores. We have thousands of Vaporizer, Glass, Online Headshop deals and coupon codes from many popular brands. Our goal is to provide a great shopping experience to online shoppers by providing quality coupons and discounts and promote sharing of coupons and deals using our social features.
Want to find more deals and coupon codes for Nectar Collector? We are always updating Slyng.com with coupons and discounts codes from all the top brands and products to bring a complete shopping experience to all shoppers. In addition, we are also looking for exclusive coupon codes, promo codes and last minute specials to provide the best savings for our shoppers. So visit Slyng.com and subscribe to your favorite brand and save with us today!
Vermillion River E-Juice Coupon Codes
Lamart Technologies Coupon Codes


text:
Welcome to eztestbank.com – Your number one online portal for test banks & solution manual.
- Test bank for Kubasek – Dynamic Business Law Essentials – 3rd Edition, test bank & solutions manual
- Availability: In stock
- Delivery Method: / Download link
- File covers all chapters within your textbook.
- Contact Us now to request your free preview.
Test bank helps you prepare and get ready for your mid-term and final exams. Test bank is essentially important because it was written in light of the specific book you are currently using for your class. This offers great credibility by making it more than bunch of questions. Questions in test bank var in difficulty, some are straightforward and others are extremely hard and require deep thinking. Being able to answer all multiple choice and problem solving questions in the test bank ensures that you will do great you in your real exam. The reason is simple. Test bank contains all possible ideas and topics that any examiner may ask about, so no matter how hard your exam is you will get great grade ( Assuming you understand rather than memorize!)
Online/downloadable Test item file for: Kubasek – Dynamic Business Law Essentials – 3rd Edition, test bank & solutions manual
Note: Test bank may contain the all or some of the following test types:
Multiple choice question
True and False
Fill in the Blank
Problem Solving

subset: commoncrawl


text:
Highland Park 12 Year
Peated Single Malt — Islands, Scotland
Reviewed March 3, 2023
Everyone loves this Scotch. Not my style. Tastes like a Band-aid.
Create Account or Sign in to comment on this review
Take your spirits journey to the next level when you create an account. Once you sign in you can...
Already have an account? Sign in
Peated Single Malt — Islands, Scotland


text:
Tufted Pure Leather Three Seater Booth Style Restaurant Sofa
Tufted Pure Leather Three Seater Booth Style Restaurant Sofa
Additional information
|220 × 110 × 97 cm
How to Order
Select the items you want to purchase on the product section of our website.
- EMAIL : You can write down codes of items you choose and then send it to us on email@example.com .
- ADD TO QUOTE : If you want to make it easier, simply tap the items you want to buy and then tap add to cart. Then press submit cart, your product information will be submitted to us.
- WHATSAPP : You can also share the same design code over the whatsapp +91-63777-12297 on this phone no. or share the product picture.
As soon as we receive the details of your product cart, subsequently, we will provide you with all the information of products including the price.
a. For any domestic payments:
- Any kind of internet banking like IMPS, RTGS or NEFT
- Demand Drafts and Cheques
b.For any international Payments:
- International Wire Transfer or TT Transfer
- Paypal [ for sample order ]


text:
Get more money for your Xperia 10 Plus
MyOldMobile makes it easy to sell your Xperia 10 Plus for best price. We look all over the web to instantly compare offers from Trustpilot verified gadget recyclers that will buy your Xperia 10 Plus. With MyOldMobile, selling your Xperia 10 Plus to a recycler is simple: choose the model, condition and network lock of your phone, click on a recycler you want to sell to, and complete their sales form.
Will I get the full quoted price?
If your Sony Xperia 10 Plus meets the conditions stated by the recycler, you should get the full amount. If it doesn't then the recycler may offer you a revised quote. Be sure to be honest about the condition of your phone, to avoid the potential disappointment of your offer being lowered. If you aren't happy with the amended quote, you'll have the option of having the phone returned to you.
Can I sell my Sony Xperia 10 Plus with water damage?
This depends on the recycler. Some recyclers will gladly accept a water damaged phone, while others will not. Be sure to check the terms and conditions before sending your water damaged phone to a recycler. If your phone does not meet the stated conditions, your phone will be rejected and returned to you.
Can I sell my Sony Xperia 10 Plus if it does not power up?
Usually recyclers will accept phones which don't power up. Be sure you select the "Damaged" option and check the recycler's terms and conditions before sending your phone.
What happens to my Sony Xperia 10 Plus after it's recycled?
If your Sony Xperia 10 Plus is in good condition, it will often be resold after being refurbished and fixed (if necessary). If your phone is in a very poor condition or damaged beyond repair, it will often be stripped of its most useful components such as the battery, screen and circuit board. These components can be reused, and recycling them helps the environment by preventing harmful substances being dumped into landfills.


text:
Product Status Discontinued on 1/24/2023 Model Number: DWM3770PLX
Portrait/Landscape Rotatable Fixed Flat-Screen Wall Mount for 37" to 70" TVs and Monitors
Your product is still covered under warranty if it was purchased after 12/11/2018.
Create a Support Ticket
Owner's manuals
Replaced by
Documents & Downloads
Design Resources
One or more views of this model are included in the following Visio stencil.
We offer a number of free stencils to help with datacenter planning. For a complete list of stencils together with installation instructions, please see the Visio Stencils for Data Center Planning page.
Product Warranty
Product Warranty Period (Worldwide)
Eaton warrants this product, if used in accordance with all applicable instructions, to be free from original defects in material and workmanship for 5 years from the date of initial purchase. If the product should prove defective in material or workmanship within that period, Eaton will, subject to the foregoing terms and limitations, repair or replace the product, in its sole discretion, as your exclusive remedy for Eaton's breach of its limited warranty.
Eaton's Return Policy
Proof of Warranty Coverage
You must provide proof that the product is covered under warranty. This can be confirmed by the product's serial number or with proof of purchase in the form of an invoice or receipt from an Eaton authorized dealer. If required, please include the proof of purchase invoice with your return. Warranties on Eaton products begin on the date of your product purchase. Warranty coverage varies by product line. Specific warranty duration is outlined in the owner's manual that accompanies each unit.
Shipping Returns
You are responsible for all transportation, insurance, duties and other similar charges for returned products. Please use caution; shipping damages resulting from improper packaging will be your responsibility. We recommend using a reliable parcel or freight carrier who is capable of providing tracking information and proof of delivery. The proof of purchase, if required, and your RMA number must be inserted in the shipping carton before the carton is sealed.
Repair or Replacement
Eaton will repair or replace the product at Eaton's option and ship the repaired or replaced product back to you at no charge.
Products not accompanied by a valid RMA number will not be accepted. The RMA number must be enclosed with your product or be clearly visible on the outside of the packaging.
Request Return Authorization (RMA)
A Return Merchandise Authorization (RMA) number is required for all products returned to Eaton for replacement under warranty. You should first consult with Eaton Customer Service (for returns within North America) or International Service (for returns outside of North America) before requesting an RMA number to eliminate any unnecessary returns. You can start the process by clicking on the contact technical support button below. Once eligibility has been determined, the RMA number along with shipping instructions will be emailed to you. RMA numbers are valid for 14 days from the date of issuance. Products will only be accepted for return if a valid RMA number is clearly marked on the outside of the package. Eaton does not accept product returns that are not under warranty. If you bought the wrong Eaton product and want to return it, please do so at the place of purchase. Returns will be authorized in accordance with the following policies.


text:
First, a fun topsy-turvy style:
Speaking of adorable, this little ghost with pigtails also fits the bill:
This wedding cake has a real Burton-esque feel to it (which is a good thing, of course):
And finally, I never imagined a skull cake would be my favorite, but then I never imagined a skull cake could be this gorgeous, either:
I hope you enjoyed today's Sweet Treats! Now brace yourselves, 'cuz this week you're going to see a whole lotta Halloween Wreckage. [rubbing hands together gleefully] Oh yeah, this is going to be good.
- Similar Sweets: Spooktacular Wedding Cakes


text:
Between Bears
Between Bears from Eran Hilleli on Vimeo.
New Music USA was formed by the merger of the American Music Center and Meet The Composer, two organizations with decades of experience serving the needs of the new music community. On November 8, 2011, their merger was completed and New Music USA was created to strengthen and grow the new music community.
New Music USA approached us with the task of bringing their look into the 21st century. We then applied the brand to its online presence, building a fully responsive WordPress-based website that showcases musician stories and makes it easy for donors to give online.
The website was featured on various design showcase sites and was an Awwwards Site of the Day in October 2012.


text:
JoeAnn Hart is the author of the novels Addled and the forthcoming Float (Ashland Creek Press, February 2013). Float, set in coastal New England, involves the fishing industry, conceptual art, jellyfish, marital woes, and plastics in the ocean.
Folklore has it that Niles Pond was once in the Guinness Book of World Records for being the closest body of fresh water to the ocean, but I can't verify it. No matter. Not only does it seem true, but as with other Guinness records, such as the heaviest weight lifted by tongue (27.5 lbs.), it also seems impossible. Yet there it is. This 38 acre pond is separated from the salty Atlantic by a causeway just wide enough for a footpath. There is Niles on one side, neatly defined and calm, and on the other, the pounding surf of Brace Cove. To stand between the two is to feel washed in conflicting emotions. I walk this route with Daisy, my fuzzy mutt who believes herself to be a famed hunter of ducks and likes to splash into the dark pond up to her sternum to stir them up.
Niles is named after the farmer who once owned Eastern Point, the small spit of Gloucester land where I live. Of the many unique features of the intertwined land and waterscapes here, Niles is nature's odd duck. It is a Massachusetts Great Pond, meaning that it is like a Common, where citizens have the right to graze their sheep, except this Common is made of water. Instead of grazing, it is reserved for hunting, fishing, ice-making, and recreation. Duck hunting is no longer feasible because of all the homes built up along the shore, and fishing is also a moot point because the perch have been eaten by the snapping turtles. As for ice, Cape Pond Ice ("the coolest guys in town") churns it out for the fishing boats these days. That leaves recreation. I've never seen anyone but Daisy swim in the pond, what with those snappers, but there are skaters when there is ice. There was no ice last winter, speaking of breaking records, but that is a topic for another time. The point is, Niles is left mostly in the hands of wildlife, as nature intended.
Phragmites at Niles
But what does nature intend? Does it intend for the pond to be choked by phragmites, the feathery reed that is prowling along the perimeter? In geologic time, Niles was once part of the ocean, an extension of Brace Cove. Over the years, rocks rolled to shore, sand accumulated, and the dune got higher until one day it was shut off from the sea. A natural spring bubbled up and slowly replaced the salt water with fresh. In the 1830's, sensing that the ocean might want to stake a claim again, Farmer Niles reinforced the 400-foot dune with granite to preserve the pond for ice-cutting and "ornament." It remains a prime resting place for migratory seabirds, and a source of fresh water for the stealthy mammals of the land, including fisher cats and raccoons. At any given time, grebes, cormorants, and ducks float on the surface, while herons and egrets stand around on one leg pretending to be reeds. The mute swans are probably a human introduction, but they are hardly mute. They hiss and snort and otherwise act aggressively because people feed them, which confuses wild animals and makes them testy. That, and the fact that the turtles pull their cygnets from below and eat them. But the phragmites are more aggressive than either swan or snapper.
According to Fish and Wildlife, non-native phragmites appeared in coastal ports in the eastern United States in the 19th century, probably as seeds clinging to the hulls of ships. Maybe humankind's natural purpose on earth is to help immobile species move around the globe. It is hard to figure out where we fit in, but in this aspect, we've succeeded. The rapid spread of phragmites in the 20thcentury is attributed to habitat disturbance and eutrophication. Raise your hand if you know what that is. It's over fertilization from the nitrates from lawn fertilizers and phosphates in laundry detergent seeping into the pond. Phragmites are usually an indicator of a wetlands system out of balance. Well, aren't we all?
Daisy on the path
Niles Pond wants to grow up to be Niles Marsh. Humans want it to stay a pond, as, I'm sure, do those migratory seabirds. A group of residents is working to have the phragmites dredged. But they're tenacious plants, with stolons like bullwhips. The upside of this tenacity is that they might hold the earth in place when the Atlantic comes calling for the pond. But, again, that is a topic for another time.
Mallards and Cormorants
Daisy and I do not think of all this when we walk. Her mind is on ducks, mine on "ornament." It's particularly hard getting out of the house this time of year. I have to leave unfinished work behind in order to beat the early-setting sun, but Daisy and I need the exercise and the mental cleansing. When we get to the causeway, she scrambles down the steep bank of Farmer Niles' stones in search of her ducks, while I, shedding myself of the day's challenges, walk that narrow path between internal calm and unleashed energy.
Sunset at Niles
Reblogged from Newfound, the online journal about place for which JoeAnn is a monthly contributor.


text:
A professional editor for more than 20 years, I'll deliver an affordable, thorough edit of your manuscript. I'm a long-time writing teacher, the author of several published books and short stories, hold a Master's degree in English and a Bachelor's in journalism, and am an award-winning publications editor and writer. More than 300 of my clients – many from the Mesa, Arizona, area – have gone on to publish their books.
I handle:
• Fiction (novels, short stories; all genres; Chicago Manual of Style)
• Nonfiction (all topics; spiritual works especially welcomed)
• Poetry collections, chapbooks
• Query letters, synopses, book proposals
• Dissertations and academic papers (broad range of subjects; APA, MLA)
• Admission essays, CVs, resumes
• Business plans, documents, brochures/fliers, catalogs
• Website content, blog posts
My editing services include:
• Proofreading – Editing for spelling, punctuation, capitalization and grammar
• Copy editing – Editing of mature manuscripts close to being published
• Substantive edit – Editing of an early draft of your manuscript
• Developmental editing – Guidance through the writing process
• Self-publishing – Formatting, uploading, writing back cover blurb/author bio
Learn more about me and my writer-friendly rates at my website or email your manuscript's word count for a price quote and estimate of turnaround time. Payment is accepted through safe and secure PayPal; references available upon request.


text:
Best Doctors For Vaccination Against Flu in Multan
Also known as
Last Updated On Monday, December 11, 2023
No Result Found.
Frequently Asked Questions
Click here to book an appointment with a Best Doctor of Vaccination Against Flu in Multan. Or, you can also call at 03171777509 from 9AM to 7PM to book your appointment.
The fee of the top Doctor of Vaccination Against Flu in Multan ranges from 25,000 PKR to 90,000 PKR. depending upon the doctor's experience and qualification.
No, there are no extra charges to book an appointment through Instacare.pk


text:
Chris Capuano (0-1, 9.64) vs. Trevor Cahill (1-3, 2.84).
It's a cold, rainy, and cloudy day in Los Angeles today*, which may be just storm-front related, but sure seems like it's reflecting the Dodgers' difficult start this year. As we lick our wounds after our final three-game series flip in the 2013 season (the Dodgers were swept in both of them, the three-game homestand vs. San Diego, as well as this three-game away trip vs. the Giants), the Dodgers have enough players on the disabled list to field a full team. Which is why we're trotting out Capuano, about whom mlb.com can only state this inspiring tidbit:
Capuano returns from the disabled list and a strained left calf muscle. In his only start for the Dodgers this year, he lasted two-plus innings trying to pitch with the injury.
Nothing like a cold and rainy evening to set the stage for Capuano's comeback, right? (Make sure you allow extra time for warming up, Cap!) But if we're to make up any of this 5.5-game deficit in the division (not to mention ending a four-game losing streak), a win tonight over the third-place Diamondbacks would be a good start.
Let's hope Cap can dump the Diamondbacks tonight:
Oh, and SoSG AC and I will be at the game this evening. We'll be the ones in our SoSG parkas. Drop a line if you want to share a hot toddy.
(*) I wrote this GT at 8a, but during the course of the day, the clouds did start to burn off a bit (it's 11:30a as I write this sentence). But screw it, I'm not changing the GT theme.
Skyline photo from John Maclean photography. Man, Ron Lim is a bad artist.
Skyline photo from John Maclean photography. Man, Ron Lim is a bad artist.


text:
SOCHI — A crowning achievement of Vladimir Putin's Russia kicked off Friday with a celebration of its past greatness and hopes for future glory, most especially for a raucous group of Russian athletes who marched into the rollicking opening ceremony of the Sochi Olympics with a message.
To the best athletes in the world, who they've invited to the edge of the Black Sea to compete on ice and snow, they sang: you're "not gonna get us."
Just after the sun set over the Caucasus Mountains and along the seashore just outside Fisht Stadium in the wet-paint-fresh Olympic Park, Russian TV star Yana Churikova shouted to a crowd still taking their seats: "Welcome to the center of the universe!"
For the next two weeks, it certainly is for the 3,000 athletes who will compete in 98 events, more people and contests than ever at the Winter Games.
It will be, too, for all those worried the games will be a target for terrorism, fears of which were stoked during the ceremony itself when a passenger aboard a flight bound for Istanbul said there was a bomb on board and tried to divert the plane to Sochi. Authorities said the plane landed safely in Turkey.
The show opened with a hiccup, as the lighting of the five Olympic Rings overshadowed the singing of the Russian national anthem. Five stars on cables drifted together above the stadium, and four of them turned into Olympic rings — but the fifth never unfurled and they all failed to erupt into white flames as planned, marring what's traditionally a key moment in the ceremony.
Also missing from the show: Putin's repression of dissent, those fears of terrorism and inconsistent security measures at the Olympics, which will take place just a few hundred miles (kilometers) away from the sites of an insurgency and routine militant violence. Also looked over: the tensions with the United States over neighboring Ukraine, NSA leaker Edward Snowden and Syria.
And the poorly paid migrant workers who helped build up the Sochi site from scratch, the disregard for local residents, the environmental abuse during construction, the pressure on activists, and the huge amounts of Sochi construction money that disappeared to corruption.
But for all such criticism, there was no shortage of pride in what Russia has achieved with these games. The head of the Sochi organizing committee, Dmitry Chernyshenko, captured the mood of many Russians present when he said, "We're now at the heart of that dream that became reality."
"The games in Sochi are our chance to show the whole world the best of what Russia is proud of," he said. "Our hospitality, our achievements, our Russia!"
The opening ceremony and subsequent games are Russia's chance to tell its story of post-Soviet resurrection to the world, and dispel the anger, fear and suspicion that has marred the buildup to these most expensive Olympics ever.
Putin was front and center, accepting the invitation from IOC President Thomas Bach to open the games from his his box high above the stadium floor. Earlier, he looking down as the real stars of the games — those athletes, dressed in winter wear of so many national colors to ward off the evening chill and a light man-made snow — walked onto a satellite image of the earth projected on the floor, the map shifting so the athletes emerged from their own country.
Every athlete who makes it to Sochi is honored with the title Olympian, but who might be deemed the stars of Sochi at the closing ceremony?
Well, American snowboarder Shaun White is certain to wow crowds in the Krasnaya Polyana resort halfpipe. On the ice, Canadian hockey players Sidney Crosby and Jonathan Toews will try to add another gold medal to their collection of Stanley Cups. In the rink, American's Ashley Wagner and Gracie Gold will try to dethrone South Korean marvel and defending goal medalist Yuna Kim.
The smallest teams often earned the biggest cheers from the crowd of 40,000, with an enthusiastic three-person Venezuelan team winning roars of approval as flag bearer and alpine skier Antonio Pardo danced and jumped along to the electronic music.
Only neighboring Ukraine, scene of a tense and ongoing standoff between a pro-Russian president and Western-leaning protesters, could compete with those cheers.
That is, until the Russians arrived.
Walking in last to a thundering bass line that struggled to overcome the ovations from the hometown crowd, the Russians reveled in all the attention. Their feeling could perhaps best be summed up by Russian singers Tatu, whose hit "Not Gonna Get Us" accompanied them to their seats.
Russians place huge significance in the Olympics, carefully watching the medal count — their dismal performance in Vancouver four years ago is on the minds of many.
Perhaps cuing on those feelings, it didn't take long for the classic Russian pride to come shining through at the opening ceremony.
As Churikova rallied the crowd to scream "louder than ever," she told the fans in their cool blue seats their keepsakes from the night would last 1,000 years. When explaining the show would be hosted in English, French and Russian, she joked that it didn't matter, because in Sochi, everyone "speaks every language in the world."
The official ceremony opened with the Russian alphabet projected on the stadium floor, as a young girl told the story of her country's heroes and their globally renowned achievements: composer Tchaikovsky; artists Kandinsky, Chagall and Malevich; writers Tolstoy, Pushkin and Chekhov; Mendeleev and his periodic table; the first spaceship Sputnik and Russia's space stations.
In a nod to Russia's long history, the anthem was sung by the 600-year-old Sretensky Monastery Choir, a symbol of an increasing rapprochement between the state and the Russian Orthodox Church. The monastery is led by Tikhon Shevkunov, who is known to be Putin's confessor and one of the nation's most influential clergymen.
The show cleared its first chance to focus on one of those issues Putin would prefer to avoid talking about without so much as a wink, as Tatu performed and steered clear of the very real anger over a Russian law banning gay "propaganda" aimed at minors that is being used to discriminate against gays.
The women in Tatu put on a lesbian act that is largely seen as an attention-getting gimmick, but on this night, they merely held hands, stopping short of the groping and kissing of their past performances. At MTV awards in 2003, the duo performed with dozens of young women dressed in tightfitting schoolgirl uniforms that they stripped off in the end.
This time, their lead-in act was the Red Army Choir MVD singing Daft Punk's Grammy-winning "Get Lucky."
Still, IOC President Thomas Bach won cheers for addressing the gay rights tensions in his opening speech Friday, telling the crowd it's possible to hold Olympics "with tolerance and without any form of discrimination for whatever reason."
While some world leaders stayed away, U.N. Secretary-General Ban Ki-moon was in Sochi. Ban has spoken out about the anti-gay law, but did not refer to it at the opening ceremony.
Asked whether Putin might arrive at the ceremony from the air, like stunt actors playing James Bond and Queen Elizabeth II did at in London, the ceremony's director, Konstantin Ernst, said "it's hardly worth hoping for that."
But with the Russian president safely in his box alongside Bach, who will carry the Olympic torch to light the cauldron for the games, after the flame's unprecedented journey to the North Pole, the cosmos, Europe's highest mountain peak and beyond?
"It's the biggest secret ever," ceremony director Konstantin Ernst said, with a smile.
Russia kicks off Sochi Games with hope and hubris


text:
City of London Yeomanry, Rough Riders (ROUGH RIDERS) Cloth Shoulder Title
- Product Code: MB-21966
- Regiment: City of London Yeomanry, Rough Riders Availability:1
Height: 24mm
Width: 111mm
Price: £12.00
A cloth embroidered 'ROUGH RIDERS' shoulder title for the City of London Yeomanry, Rough Riders. In good condition.
We take great pride in our stock and will always strive to bring you genuine items. All our items are carefully checked to make sure they are authentic original pieces.
Having worked in the field for many years we appreciate that there can occasionally be differences of opinion. This is why we have a no quibble returns policy on ALL items. If you want to return any purchase, for whatever reason, we will issue a full refund including your postage costs.
We accept payment by:
Credit and debit cards
Cash (any currency)
U.K. postal orders
Sterling cheques
Exchange of goods
Our standard shipping costs apply on almost all of our items. The prices are as follows:
UK Standard Delivery - £3.45
UK Special Delivery - £7.95
Europe Priority Airmail - £9.95
Rest of World Priority Airmail - £11.45
Some large/heavy items may incur extra shipping costs. This will be clearly marked in the description and all prices will be shown before any payment is taken.
For more information on payment and shipping please click here
Tags: City of London Yeomanry, Rough Riders, Military Badges, Badges, Cloth Shoulder Titles


text:
Sir Charles Stephen Gore
© National Portrait Gallery, London
Sir Charles Stephen Gore
by Camille Silvy
albumen print, 13 February 1861
3 3/8 in. x 2 1/8 in. (86 mm x 55 mm) image size
Purchased, 1904
Photographs Collection
NPG Ax51502
Sitterback to top
- Sir Charles Stephen Gore (1793-1869), Army officer. Sitter in 1 portrait.
Artistback to top
- Camille Silvy (1834-1910), Photographer. Artist or producer associated with 14313 portraits, Sitter in 24 portraits.
Placesback to top
- Place made: United Kingdom: England, London (photographer's studio, 38 Porchester Terrace, Bayswater, London)
Subjects & Themesback to top
Events of 1861back to top
Current affairsDeath of Prince Albert, from typhoid fever. Queen Victoria goes into a long period of mourning, withdrawing from public duties, and becomes known by the satirical title 'Widow of Windsor'.
Art and scienceMrs Beeton's Book of Household Management is published by her husband Sidney, who successfully maintained the Beeton brand after his wife's early death seven years later. The highly popular book, containing recipes and advice for housekeeping, appealed to the Victorian belief that a woman's role was managing the home.
Morris, Marshall, Faulkner and Company is founded, marking the start of the arts and crafts movement.
InternationalThe American civil war begins after the Confederate army attacks Union forces at Fort Sumter in April. The Confederates, comprised of eleven southern states who seceded from the Union over the right to independence on issues such as abolition, are presided over by Jefferson Davis, formerly senator of Mississippi. Although the Union had early successes, the Confederates' victory at Bull Run sets the Union up for a long, four-year war.
Tell us more back to top
Can you tell us more about this portrait? Spotted an error, information that is missing (a sitter's life dates, occupation or family relationships, or a date of portrait for example) or do you know anything that we don't know? If you have information to share please complete the form below.
If you require information from us, please use our Archive enquiry service. You can buy a print of most illustrated portraits. Select the portrait of interest to you, then look out for a Buy a Print button. Prices start at £6 for unframed prints, £25 for framed prints. If you wish to license this image, please use our Rights and Images service.
Please note that we cannot provide valuations.
We digitise over 8,000 portraits a year and we cannot guarantee being able to digitise images that are not already scheduled.
Related pages
Join & Support
360° sculptures
Look right round a selection of sculptures in our Collection
Who's Who
Explore who is who in our group portraits


text: Energy | 13. October 2015 | posted by Dorothee Bürkle Sunshine over the Kalahari Credit: Abengoa Solar power station in South Africa. Khi Solar One in the Northern Cape region – designed for a capacity of 50 megawatts – will soon be connected to the grid. The Sun almost always shines in the Kalahari, which extends across the Northern Cape region in South Africa. The area enjoys 4000 sunlight hours and an average solar irradiance of up to 2800 kilowatt-hours per square metre per year; by comparison, Spain reaches no more than 2300. Therefore, it follows that the currently untapped potential for solar power is immense. South Africa's main source of electricity is coal (90 percent). Could solar power stations bring about change? Experts in science, industry and politics will discuss this exact question at the SolarPACES Conference. They will also pool their opinions on innovation regarding solar thermal power plants, storage technologies and the use of solar energy to produce fuels. read more


text:
Therafit Physical Therapy believes that every person has the right to privacy.
When using our website, services and/or products, you may give us information. Therafit Physical Therapy may ask for and maintain information on its visitors and customers to provide a better, more personal experience. Therafit Physical Therapy will never sell or trade any of the information accumulated through the course of business about web visitors, clients or other contacts.
Therafit Physical Therapy employs cookies in order for its server to recognize a return visitor as a unique user. Cookies are small text files placed in the 'Cookies' folder on a visitor's hard disk and allow for Therafit Physical Therapy to remember the visitor. The cookies placed by the Therafit Physical Therapy server are readable only by Therafit Physical Therapy, and cookies cannot access, read or modify any other data on a computer. All web-browsers offer the option to refuse any cookie, and if a visitor refuses the Therafit Physical Therapy cookie then Therafit Physical Therapy does not gather any information on that visitor.
Information Gathered
The Therafit Physical Therapy system may gather information such as what kind of browser a visitor is on, what operating system they are using, their IP address, and their clickstream information (for example, which pages they have viewed and how long they have been there). Note that information is only gathered while the visitor is on the website in question -- in this case Therafit Physical Therapy monitors how a visitor arrives at the website, but cannot and will not gather information about other sites the visitor has been on.
At times, Therafit Physical Therapy may ask for more specific contact information to be entered as a means of registration before accessing a certain part of the site. Therafit Physical Therapy uses this information to understand its visitors and, with permission, to provide visitors with updates on the company and its products. A visitor may always option to not enter any information about themselves.
Usages of Info
Therafit Physical Therapy may automatically receive and record information on our server logs from your browser including your IP address, cookie information, time stamp (time page accessed as well as time spent per web page), as well as the specific pages you requested.
The only time Therafit Physical Therapy, its partners, subsidiaries, agents, officers or employees would provide specific information to anyone is if required to do so by law, and even then only to the proper authorities.
Reservation of Rights
Therafit Physical Therapy reserves the right to change this privacy statement at any time with 30 days notice being posted to the Therafit Physical Therapy web site. If you have any questions about this privacy statement or the practices of this site, please contact the Therafit Physical Therapy Privacy representative directly at firstname.lastname@example.com


text:
This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org
Portland, Maine
OWASP Maine
Welcome to the Maine chapter homepage. The chapter leader is Casey Dunham.
OWASP Foundation (Overview Slides) is a professional association of global members and is open to anyone interested in learning more about software security. Local chapters are run independently and guided by the Chapter_Leader_Handbook. As a 501(c)(3) non-profit professional association your support and sponsorship of any meeting venue and/or refreshments is tax-deductible. Financial contributions should only be made online using the authorized online chapter donation button. To be a SPEAKER at ANY OWASP Chapter in the world simply review the speaker agreement and then contact the local chapter leader with details of what OWASP PROJECT, independent research or related software security topic you would like to present on.
to this chapter or become a local chapter supporter. Or consider the value of Individual, Corporate, or Academic Supporter membership. Ready to become a member?
Local News
Meeting Location
Everyone is welcome to join us at our chapter meetings.


text:
Coding Geek:
Mac/PC Geek:
If you're wondering, it's a Tonberry. And if you're not wondering, well, it's still a Tonberry.)
(This gorgeous Companion Cube cake was sub'd by Emily H. & originally posted on Offbeat Bride)
Old School Geek:
Nominate your own Sunday Sweet by sending it to Sunday Sweets [at] Cake Wrecks [dot] com.
- Similar Sweets: Stargate Cakes


text:
Class Central Tips
By the end of this course, you will be enlightened about the changing world you live in, and have a much better understanding of the machinations on how organizations and governments are striving to improve health worldwide. You'll also learn how to keep yourself safe and be a savvy participant in the global health arena. You'll be prepared to travel and to take your skills to chronic/emergent situations and help respond to the pressing needs while participating in global health activities throughout the world.
Week one will serve as an introduction to global health concepts with a look at changing trends in the 21st century; urbanization, environmental stress and resource scarcity. During week two, we will dive into global health security: food, water, energy, and the threats of a changing climate. Week three will cover the global burden of disease, infectious disease, the rise of non-communicable diseases, mental health, and access to care. During week four, we will learn about the stakeholders in global health: NGOs, governments, non-state actors; understanding where the money comes from, how it is allocated and the challenges of measuring results; human rights: what are they and how are they protected? During week five, we move onto complex humanitarian emergencies: forced migrations, wars, response standards, and the legal basis for interventions. Finally, during week six, we will end our course by learning how to be an effective participant--caring for yourself: pre-travel preparation, understanding risks when traveling outside your home country, and physiologic vulnerability.
This course also serves as a prerequisite to the hands-on 'Global Health Responder' certification from the University of Colorado School of Medicine. If you're interested in taking this 3-day hands on course-- offered throughout the world-- please go to coloradoWM.org or email our administrator: [email protected].


text:
PPP Loan Data — Soflo Machining Corp, Coral Springs, FL
Soflo Machining Corp
Entity: Corporation
Industry: Machine Shops
Location: Coral Springs, FLTweet This • Search All PPP Data
Soflo Machining Corp is a corporation located at 3771 Nw 126 Ave in Coral Springs, Florida that received a Coronavirus-related PPP loan from the SBA of $51,000.00 in April, 2020.
PPP Loan Information
Loan #2923117109
Loan Size:
Jobs Retained:9
Loan Approved:2020-04-11
Loan Status:Paid in Full or Forgiven
Lender:BankUnited, National Association
Soflo Machining Corp in Coral Springs, FL received a Paycheck Protection Loan of $51,000 through BankUnited, National Association, which was approved in April, 2020.
This loan's status is reported by the SBA as "Paid in Full", which includes both loans repaid and those fully forgiven from repayment under PPP guidelines. The loan's status was last updated by the SBA in June, 2021.
Payroll Estimates Based On SBA PPP Loan Eligibility Formula
Understanding The SBA Formula For Determining PPP Loan Eligibility
The simplest way to describe the standard PPP calculation is that businesses are eligible to receive a maximum PPP loan of up to 2.5 x average 2019 monthly payroll costs. However, specific calculation methods vary based on entity type and have numerous qualifications.Read More
Understanding Payroll Estimates Based On PPP Amount
Please note that payroll estimations are based on a simplified PPP eligibility formula and do not account for factors such as salaries over $100k and other PPP eligibility components.Read More
Based on the standard PPP eligibility formula, it may be possible to estimate the payroll expenses represented by a company on their PPP application (see details above). In order to qualify for the PPP loan amount received, Soflo Machining Corp's 2019 payroll expenses are estimated to be at least $244,800.
Based on their reported 9 jobs retained, this equals an estimated average yearly compensation of $27,200 per employee1
Reported PPP Proceed Usage:
On the PPP application, Soflo Machining Corp reported intending to use the proceeds of their PPP loan for the following expenses:
- Payroll: $51,000
Business Information - Soflo Machining Corp in Coral Springs, FL
3771 Nw 126 Ave
Coral Springs, FL 33065
Business Industry:
Machine Shops
NAICS code 332710
Business Owner Demographics
Race: Unreported
Ethnicity: Unreported
Gender: Unreported
Veteran Status: Unreported
Business Demographics
Business Age: New Business or 2 years or less
LMI Zone: Y
HUBZone: N
Rural / Urban: Urban
Similar Companies near Coral Springs
In the Coral Springs area, 4 businesses in the "Machine Shops" industry received a PPP loan. These local businesses reported an average of 53 employees (compared to this company's 9) and received an average PPP loan of $623,719 (compared to this company's $51,000).
Similar Nearby Businesses Who Received PPP Funding:
Baker-Hill Industries Inc
Coral Springs, FL
Big Wake LLC
Lighthouse Point, FL
AL. Garey & Associates, Inc
Coral Springs, FL
Industry PPP Comparison Statistics
Nationwide, 16,515 businesses in the "Machine Shops" industry received a total of $2.92B in PPP loans. This industry in total received less than 1% of the total PPP funding distributed.
PPP recipients in this industry report an average of 15 employees, 67% higher than Soflo Machining Corp's reported 9 employees, and received an average PPP loan of $176,780, 247% higher than this company's loan of $51,000.
FederalPay's PPP Information Policy
Paycheck Protection Loan data has been made public by the Small Business Administration (SBA) for all private companies that received a PPP loan.
All information displayed on this page is publicly available information under PPP loan guidelines, in compliance with 5 U.S.C. § 552 (Freedom of Information Act) and 5 U.S.C. § 552a (the Privacy Act) and is published unmodified, as provided by the SBA. FederalPay does not modify the data and makes no claims regarding its accuracy.
Any corrections or modifications to this data can only be made via the SBA. For more information, please see the FederalPay PPP Data Policy.
Footnotes & Information
1. Estimations for informational purposes only. Payroll and salary estimates assume the borrower used the standard PPP calculation of 2.5 x average 2019 monthly payroll costs to determine PPP loan eligibility. Calculation methods vary based on entity type. Please read the latest official SBA PPP calculation rules for a full explanation of PPP loan amount calculation methods.
2. If a company's reported number of employees divided by the maximum PPP range amount per the SBA is greater than $100,000, the estimated maximum PPP loan received by the company can be adjusted down to assume no more than $100,000 yearly salary per employee was used in the PPP application. While employees at the company may earn more, $100k / employee is the maximum amount that can be used in PPP eligibility calculations.
Have FederalPay.org's open data tools been valuable? Consider donating!


text:
Call Today for Your Free Quote!
Published by WebAdmin on June 1, 2020.
Full size is 600×738 pixels.
Enter a message below and we will send you a reply within 24 hours.
165 Greble Rd.
Myerstown, PA17067
2303 Leaman Rd.
Lancaster, PA17062
(717) 933-0331
Follow Shank Door on Facebook for garage door news and tips!
Lehigh, Delaware, Chester, Montgomery, Northern Maryland, Schuylkill, Perry, Juniata, Mifflin, Adams, Cumberland


text:
is coming, from the desert of northern Africa through the desert of Middle East...to the U.S.A. ...It's coming from the sorrow in the street,
By Leonard Cohen.
the holy places where the races meet;
from the homicidal bitchin'
that goes down in every kitchen
to determine who will serve and who will eat.
From the wells of disappointment
where the women kneel to pray
for the grace of God in the desert here
and the desert far away:
Democracy is coming to the U.S.A.
Sail on, sail on
O mighty Ship of State!
To the Shores of Need
Past the Reefs of Greed
Through the Squalls of Hate
Sail on, sail on, sail on, sail on.
...It's coming from the sorrow in the street,


text:
The Bliss is one of the most elegant modern Bathroom Vanities around. This 48-inch model comes with a reinforced Acrylic sink, Marine Wood Veneer Constructed Console that is fully moister and waterproof, with high-quality European DTC Hardware, that provides smooth push-open operation drawers.
Included in the price:
- Marine Wood Veneer Construction Console (Water and Moister Resistant)
- Integrated European DTC Push-Open hardware
- Reinforced Acrylic Composite Sink with Rectangular Chrome Overflow
- Aluminum Kick Plate
- Installation Hardware
Any Mirrors, Faucets or Pop-Up Drains in the pictures are NOT included in the price.
- Six Fully Functional Drawers
- Cabinet comes Fully Assembled
- Rich Durable Finish
- Push-Open Hardware
- Countertop Pre-drilled for a Single Hole Faucet
- Sink has Overflow
- Style: Modern
- 1 Year Manufacturer Warranty
- Vanity Base Material: Marine Wood Veneer
- Vanity Countertop Material: Reinforced Acrylic Composite
- Number of Sinks Included: 1
- Number of Doors: 0
- Number of Drawers: 6
- Sink Installation Type: Integrated
- Sink Material: Reinforced Acrylic Composite
- Handles Material: Aluminum
Vanity Base Color/Finish:
- Butternut
Vanity Dimensions:
- Download Specs – Click Here
Payment & Security
Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.


text:
This document describes EPA's pre-manufacture notice review determination under amended TSCA for P-18-0009.
Does not contain confidential business information (CBI).You may need a PDF reader to view some of the files on this page. See EPA's About PDF page to learn more.
- TSCA Section 5(a)(3)(C) Determination for Premanufacture Number (PMN) P-18-0009 (PDF)(6 pp, 74 K, July, 2019)


text:
Map Unavailable
Date(s) - 30/09/2029
8:30 am - 10:00 am
A long run for BHWRC members only.
Meet at 8.30am.
If you are thinking of joining the club you're very welcome to come along, but please let us know you are coming first by emailing [email protected]. Visit Membership for more details.


text:
MateCat Blog
Join The Revolution
Crina Balaban / 15 February 2016
We are pushing translation technology forward to give you better matches and more profits
Try MateCat now!
MateCat is an enterprise-level, online CAT tool which makes project creation, assignment and post-editing easy
Join over 20k subscribers receiving blog updates and additional goodies via email. No spam, just fun.


text:
public package Foswiki::Func
public package Foswiki::Func
lib/Foswiki/Plugins/EmptyPlugin.pm for a template Plugin
and starter documentation on how to write a Plugin.
Plugins should only call methods in packages documented in
DevelopingPlugins. If you use
functions in other Foswiki libraries you risk creating a security hole, and
you will probably need to change your plugin when you upgrade Foswiki.
Since: date indicates where functions or parameters have been added since
the baseline of the API (Foswiki 1.0.0). The date indicates the
earliest date of a Foswiki release that will support that function or
parameter. See Foswiki:Download.ReleaseDates for version release dates.
Deprecated date indicates where a function or parameters has been
deprecated. Deprecated
functions will still work, though they should
not be called in new plugins and should be replaced in older plugins
as soon as possible. Deprecated parameters are simply ignored in Foswiki
releases after date.
Until date indicates where a function or parameter has been removed.
The date indicates the latest date at which Foswiki releases still supported
the function or parameter.
Note that the
Foswiki::Func API should always be the first place extension
authors look for methods. Certain other lower-level APIs are also exposed
by the core, but those APIs should only be called if there is no alternative
available through
Foswiki::Func. The APIs in question are documented in
SKIN and
COVER preferences variables or the
skin and
cover CGI parameters
$skin Comma-separated list of skins, e.g.
'gnu,tartan'. Empty string if none.
$host URL host, e.g.
$web - Web name, e.g.
$topic - Topic name, e.g.
$script - Script name, e.g.
... - an arbitrary number of name=>value parameter pairs that will be url-encoded and added to the url. The special parameter name '#' is reserved for specifying an anchor. e.g. getScriptUrl('x','y','view','#'=>'XXX',a=>1,b=>2) will give .../view/x/y?a=1&b=2#XXX
$url URL, e.g.
my $url; # $url eq 'http://wiki.example.org/url/to/bin' $url = Foswiki::Func::getScriptUrl(); # $url eq 'http://wiki.example.org/url/to/bin/edit' $url = Foswiki::Func::getScriptUrl(undef, undef, 'edit'); # $url eq 'http://wiki.example.org/url/to/bin/edit/Web/Topic' $url = Foswiki::Func::getScriptUrl('Web', 'Topic', 'edit');
my $path; # $path eq '/path/to/bin' $path = Foswiki::Func::getScriptUrlPath(); # $path eq '/path/to/bin/edit' $path = Foswiki::Func::getScriptUrlPath(undef, undef, 'edit'); # $path eq '/path/to/bin/edit/Web/Topic' $path = Foswiki::Func::getScriptUrlPath('Web', 'Topic', 'edit');Since: 19 Jan 2012 (when called without parameters, this function is backwards-compatible with the old version which was deprecated 28 Nov 2008).
$web - Web name, e.g.
'Main'. The current web is taken if empty
$topic - Topic name, e.g.
$url URL, e.g.
This method of constructing URLs causes many problems, and is
strongly discouraged.
Since Foswiki 2 this function accepts parameters as follows:
$web - name of web
$topic - name of topic (ignored if
web is not given)
$attachment - name of attachment (ignored if
web or
topic not given)
%options - additional options
topic_version - version of topic to retrieve attachment from
attachment_version - version of attachment to retrieve
absolute - requests an absolute URL (rather than a relative path)
$web is not given,
$topic and
$attachment are ignored.
$topic is not given,
$attachment is ignored.
topic_version is not given, the most recent revision of the topic
will be linked. Similarly if attachment_version= is not given, the most recent
revision of the attachment will be assumed. If
topic_version is specified
attachment_version is not (or the specified
attachment_version is not
present), then the most recent version of the attachment in that topic version
will be linked. Not all stores support retrieving old attachment versions
this way.
absolute is not specified (or is 0), this function will generate
relative URLs. However if Foswiki is running in an absolute URL context
(the skin requires absolute URLs, such as print or rss, or Foswiki is
running from the command-line) then
absolute will be ignored and
absolute URLs will always be generated.
https if the
LWP CPAN module is
Note that the
$url may have an optional user and password, as specified by
the relevant RFC. Any proxy set in
configure is honoured.
$response is an object that is known to implement the following subset of
the methods of
LWP::Response. It may in fact be an
LWP::Response object,
but it may also not be if
LWP is not available, so callers may only assume
the following subset of methods is available:
require LWP.
is_error() will return
code() will return a valid HTTP status code
as specified in RFC 2616 and RFC 2518, and
message() will return the
message that was received from
the server. In the event of a client-side error (e.g. an unparseable URL)
is_error() will return true and
message() will return an explanatory
code() will return 400 (BAD REQUEST).
Note: Callers can easily check the availability of other HTTP::Response methods
as follows:
my $response = Foswiki::Func::getExternalResource($url); if (!$response->is_error() && $response->isa('HTTP::Response')) { ... other methods of HTTP::Response may be called } else { ... only the methods listed above may be called }
Foswiki::Request. The request
object can be used to get the parameters passed to the request, either
via CGI or on the command line (depending on how the script was called).
Foswiki::Request object is largely compatible with a CPAN:CGI object.
Most of the time, documentation for that class applies directly to
Foswiki::Request objects as well.
Note that this method replaces
getCgiQuery (which is a synonym for this
method). Code that is expected to run with pre-1.1 versions of Foswiki
can continue to call
getCgiQuery for as long as necessary.
Caution: Direct use of the CGI parameters can introduce security vulnerabilities.
Any parameters from the URL should be carefully validated, and encoded for safety
before displaying the data back to the user.
my $query = Foswiki::Func::getRequestObject(); my $single = $query->param('parm1'); # Get a scalar value (Returns 1st value if multiple valued) my @multi = $query->multi_param('parm2'); # Get multi-valued parameterSince: 31 Mar 2009
setSessionValue and
$key - Session key
$value Value associated with key; empty string if not set
$key - Session key
$value - Value associated with key
$key - name of value stored in session to be cleared. Note that you cannot clear
sub initPlugin { Foswiki::Func::getContext()->{'MyID'} = 1; ...This can be used in SecondPlugin.pm like this:
sub initPlugin { if( Foswiki::Func::getContext()->{'MyID'} ) { ... } ...or in a template, like this:
%TMPL:DEF{"ON"}% Not off %TMPL:END% %TMPL:DEF{"OFF"}% Not on %TMPL:END% %TMPL:P{context="MyID" then="ON" else="OFF"}%or in a topic:
%IF{"context MyID" then="MyID is ON" else="MyID is OFF"}%Note: all plugins have an automatically generated context identifier if they are installed and initialised. For example, if the FirstPlugin is working, the context ID 'FirstPlugin' will be set.
$web - new web
$topic - new topic
$web.$topic onto the
preferences stack. Any preferences found in
$web.$topic will be used
in place of preferences previously set in the stack, provided that they
were not finalized in a lower level. Preferences set in the prior
web.topic are not cleared.
$web.$topic replaces and adds to
preferences but does not remove preferences that it does not set.
Note that if the new topic is not readable by the logged in user due to
access control considerations, there will not be an exception. It is the
duty of the caller to check access permissions before changing the topic.
All other errors will throw an exception.
It is the duty of the caller to restore the original context by calling
Note that this call does not re-initialise plugins, so if you have used
global variables to remember the web and topic in
initPlugin, then those
values will be unchanged.
pushTopicContext was called.
$var - The name of the variable, i.e. the 'MYVAR' part of %MYVAR%. The variable name must match /^[A-Z][A-Z0-9_]*$/ or it won't work.
\&fn - Reference to the handler function.
$syntax can be 'classic' (the default) or 'context-free'. (context-free may be removed in future) 'classic' syntax is appropriate where you want the variable to support classic syntax
%MYVAR{ "unnamed" param1="value1" param2="value2" }% syntax, as well as an unquoted default parameter, such as
%MYVAR{unquoted parameter}%. If your variable will only use named parameters, you can use 'context-free' syntax, which supports a more relaxed syntax. For example, %MYVAR{param1=value1, value 2, param3="value 3", param4='value 5"}%
sub handler(\%session, \%params, $topic, $web, $topicObject)where:
\%session - a reference to the session object (may be ignored)
\%params - a reference to a Foswiki::Attrs object containing parameters. This can be used as a simple hash that maps parameter names to values, with _DEFAULT being the name for the default parameter.
$topic - name of the topic in the query
$web - name of the web in the query
$topicObject - is the Foswiki::Meta object for the topic Since 2009-03-06
sub initPlugin{ Foswiki::Func::registerTagHandler('EXEC', \&boo); } sub boo { my( $session, $params, $topic, $web, $topicObject ) = @_; my $cmd = $params->{_DEFAULT}; return "NO COMMAND SPECIFIED" unless $cmd; my $result = `$cmd 2>&1`; return $params->{silent} ? '' : $result; }would let you do this:
%EXEC{"ps -Af" silent="on"}%
Registered tags differ from tags implemented using the old approach (text substitution in
commonTagsHandler) in the following ways:
commonTagsHandler is only called later, when all system tags have already been expanded (though they are expanded again after
commonTagsHandler returns).
FRED defines both
%FRED{...}% and also
return '%SERVERTIME%';). It won't work.
$alias - The name .
\&fn - Reference to the function.
%options - additional options affecting the handler
sub handler(\%session)where:
\%session - a reference to the Foswiki session object (may be ignored)
%options hash. These options are important
to ensuring that requests to your handler can't be used in cross-scripting
attacks, or used for phishing.
authenticate - use this boolean option to require authentication for the handler. If this is set, then an authenticated session must be in place or the REST call will be rejected with a 401 (Unauthorized) status code. As of Foswiki 2, authenticate defaults to true. If the handler being registered is usable by guests, and does its own checking, pass authenticate => 0 to remove the requirement for an authenticated session.
validate - use this boolean option to require validation of any requests made to this handler. Validation is the process by which a secret key is passed to the server so it can identify the origin of the request. As of Foswiki 2, validate will default to true. If your handler is typically invoked multipe times on a page, or doesn not need protection from CSRF attacks, set validate => 0.
http_allow use this option to specify that the HTTP methods that can be used to invoke the handler. For example,
http_allow=>'POST,GET' will constrain the handler to be invoked using POST and GET, but not other HTTP methods, such as DELETE. Normally you will use http_allow=>'POST'. Together with authentication this is an important security tool. Handlers that can be invoked using GET are vulnerable to being called in the
src parameter of
img tags, a common method for cross-site request forgery (CSRF) attacks. As of Foswiki 2, this option will default to http_allow => 'POST'. If your handler does not update, then explicitly set this to http_allow => 'GET,POST'
description => 'handler information' This is a completely optional short description of the handler function. It is displayed by the %RESTHANDLERS% macro used for extension diagnostics.
Foswiki::Func::registerRESTHandler('example', \&restExample, authenticate => 1, # Set to 0 if handler should be useable by WikiGuest validate => 1, # Set to 0 to disable StrikeOne CSRF protection http_allow => 'POST', # Set to 'GET,POST' to allow use HTTP GET and POST description => 'Example handler for Empty Plugin' );This adds the
restExample function to the REST dispatch table
for the EmptyPlugin under the 'example' alias, and allows it
to be invoked using the URL
note that the URL
(ie, with the name of the function instead of the alias) will not work.
rest script allows handlers to be invoked from the command line. The
script is invoked passing the parameters as described in CommandAndCGIScripts.
If the handler requires authentication (
authenticate=>1 ) then this can
be passed in the username and
password parameters.
For example,
perl -wT rest /EmptyPlugin/example -username HughPugh -password trumpton
$key - Preference name
$web - Name of web, optional. If defined, we shortcircuit to WebPreferences (ignoring SitePreferences). This is really only useful for ACLs.
$value Preferences value; undefined if not set
* Set WEBBGCOLOR = #FFFFC0
my $webColor = Foswiki::Func::getPreferencesValue( 'WEBBGCOLOR', 'Sandbox' );
* Set COLOR = red
"MYPLUGIN_COLOR" for
my $color = Foswiki::Func::getPreferencesValue( "MYPLUGIN_COLOR" );
$NO_PREFS_IN_TOPIC is enabled in the plugin, then
preferences set in the plugin topic will be ignored.
$key - Plugin Preferences key w/o PLUGINNAME_ prefix.
$value Preferences value; empty string if not set
Note: This function will will only work when called from the Plugin.pm file itself. it will not work if called from a sub-package (e.g. Foswiki::Plugins::MyPlugin::MyModule)
NOTE: If
$NO_PREFS_IN_TOPIC is enabled in the plugin, then
preferences set in the plugin topic will be ignored.
$key - Preferences key
$web - Name of web, optional. Current web if not specified; does not apply to settings of Plugin topics
$value Preferences flag
'1' (if set), or
"0" (for preferences values
"no" and
* Set SHOWHELP = off
"MYPLUGIN_SHOWHELP" for
my $showHelp = Foswiki::Func::getPreferencesFlag( "MYPLUGIN_SHOWHELP" );
$NO_PREFS_IN_TOPIC is enabled in the plugin, then
preferences set in the plugin topic will be ignored.
$key - Plugin Preferences key w/o PLUGINNAME_ prefix.
"no" and
"0", or values not set at all. True otherwise.
Note: This function will will only work when called from the Plugin.pm file itself. it will not work if called from a sub-package (e.g. Foswiki::Plugins::MyPlugin::MyModule)
NOTE: If
$NO_PREFS_IN_TOPIC is enabled in the plugin, then
preferences set in the plugin topic will be ignored.
%$name% will expand to the preference when used in
future variable expansions.
The preference only persists for the rest of this request. Finalised
preferences cannot be redefined using this function.
$loginName Default user name, e.g.
$user can be a login, wikiname or web.wikiname
$cUID, an internal unique and portable escaped identifier for
registered users. This may be autogenerated for an authenticated but
unregistered user.
$wikiName Wiki Name, e.g.
$wikiName Wiki Name, e.g.
$id - Wiki name, e.g.
'Main.JohnDoe' or
'JohnDoe'. $id may also be a login name. This will normally be transparent, but should be borne in mind if you have login names that are also legal wiki names.
$loginName Login name of user, e.g.
'jdoe', or undef if not
Note that it is possible for several login names to map to the same wikiname.
This function will only return the first login name that maps to the
returns undef if the WikiName is not found.
$loginName - Login name, e.g.
'jdoe'. This may also be a wiki name. This will normally be transparent, but may be relevant if you have login names that are also valid wiki names.
$dontAddWeb - Do not add web prefix if
$wikiName Wiki name of user, e.g.
'Main.JohnDoe' or
userToWikiName will always return a name. If the user does not
exist in the mapping, the $loginName parameter is returned. (backward compatibility)
$email - email address to look up
$dontAddWeb - Do not add web prefix if
$user - wikiname of user to look up
if( Foswiki::Func::isGroupMember( "HesperionXXGroup", "jordi", { expand => 0 } )) { ... }If
$user is
undef, it defaults to the currently logged-in user.
my $it = Foswiki::Func::eachUser(); while ($it->hasNext()) { my $user = $it->next(); # $user is a wikiname }WARNING on large sites, this could be a long list!
$id - WikiName or login name of the user. If
$id is
undef, defaults to the currently logged-in user.
my $iterator = Foswiki::Func::eachGroup(); while ($it->hasNext()) { my $group = $it->next(); # $group is a group name e.g. AdminGroup }WARNING on large sites, this could be a long list!
$group is the name of a user group.
my $iterator = Foswiki::Func::eachGroupMember('RadioheadGroup', {expand => 'false'); while ($it->hasNext()) { my $user = $it->next(); # $user is a wiki name e.g. 'TomYorke', 'PhilSelway' # With expand set to false, group names can also be returned. # Users are not checked to exist. }WARNING on large sites, this could be a long list!
$type - Access type, required, e.g.
$id - WikiName of remote user, required, e.g.
"RickShaw". $id may also be a login name. If
$id is '', 0 or
undef then access is always permitted. This is used by other functions if the caller should be able to bypass access checks.
$text - Topic text, optional. If 'perl false' (undef, 0 or ''), topic
$web.$topic is consulted.
$text may optionally contain embedded
%META:PREFERENCE tags. Provide this parameter if:
$meta parameter.
$topic - Topic name, optional, e.g.
'PrivateStuff', '' or
$web - Web name, required, e.g.
$meta - Meta-data object, as returned by
readTopic. Optional. If
undef, but
$text is defined, then access controls will be parsed from
$text. If defined, then metadata embedded in
$text will be ignored. This parameter is always ignored if
$text is undefined. Settings in
$meta override
Set settings in $text.
Tip: if you want, you can use this method to check your own access control types. For example, if you:Example code:
- Set ALLOWTOPICSPIN = IncyWincy
ThatWeb.ThisTopic, then a call to
checkAccessPermission('SPIN', 'IncyWincy', undef, 'ThisTopic', 'ThatWeb', undef)will return
use Error qw(:try); use Foswiki::AccessControlException; ... unless ( Foswiki::Func::checkAccessPermission( "VIEW", $session->{user}, undef, $topic, $web ) ) { throw Foswiki::AccessControlException( "VIEW", $session->{user}, $web, $topic, $Foswiki::Meta::reason ); }
$filter - spec of web types to recover
$filter may also contain the word 'public' which will further filter
out webs that have NOSEARCHALL set on them.
'allowed' filters out webs the current user can't read.
$web - (Since 2009-01-01) name of web to get list of subwebs for. Defaults to the root. note that if set, the list will not contain the web specified in $web
my @webs = Foswiki::Func::getListOfWebs( "user,public" );
$web - Web name, required, e.g.
$web - Web name, required, e.g.
@topics Topic list, e.g.
( 'WebChanges', 'WebHome', 'WebIndex', 'WebNotify' )
$name - topic name
$allowNonWW - true to allow non-wikiwords
$web - Web name, optional, e.g.
$topic - Topic name, required, e.g.
'TokyoOffice', or
Specifically, the Main is used if $web is not specified and $topic has no web specifier.
To get an expected behaviour it is recommened to specify the current web for $web; don't leave it empty.
$web - Web name, required, e.g.
$topic - Topic name, required, e.g.
$rev - revision to read (default latest)
( $meta, $text ) Meta data object and topic text
$meta is a perl 'object' of class
Foswiki::Meta. This class is
fully documented in the source code documentation shipped with the
release, or can be inspected in the
lib/Foswiki/Meta.pm file.
This method ignores topic access permissions. You should be careful to use
checkAccessPermission to ensure the current user has read access to the
$web - Web name, optional, e.g.
$topic - Topic name, required, e.g.
$rev - revsion number, or tag name (can be in the format 1.2, or just the minor number)
$attachment -attachment filename
( $date, $user, $rev, $comment ) List with: ( last update date, login name of last user, minor part of top revision number, comment of attachment if attachment ), e.g.
( 1234561, 'phoeny', "5", )
|in epochSec
|Wiki name of the author (not login name)
|actual rev number
|comment given for uploaded attachment
$meta->getRevisionInfo instead if you can - it is significantly
more efficient.
$web - web for topic
$topic - topic
$time - time (in epoch secs) for the rev
$web - Web name, optional, e.g.
$topic - Topic name, required, e.g.
TokyoOffice, or
$attachment - attachment name, e.g.=logo.gif=
The attachment must exist in the store (it is not sufficient for it to be referenced
in the object only)
$web - web for topic - must not be tainted
$topic - topic - must not be tainted
$name - attachment name - must not be tainted
$rev - revision to read (default latest)
readTopic. If the attachment does not exist, or cannot be read, undef
will be returned. If the revision is not specified, the latest version will
be returned.
View permission on the topic is required for the
read to be successful. Access control violations are flagged by a
Foswiki::AccessControlException. Permissions are checked for the current user.
use Error qw(:try); use Foswiki::AccessControlException (); my( $meta, $text ) = Foswiki::Func::readTopic( $web, $topic ); my @attachments = $meta->find( 'FILEATTACHMENT' ); foreach my $a ( @attachments ) { try { my $data = Foswiki::Func::readAttachment( $web, $topic, $a->{name} ); ... } catch Foswiki::AccessControlException with { }; }This is the way 99% of extensions will access attachments. See
Foswiki::Meta::openAttachment for a lower level interface that does
not check access controls.
$newWeb is the name of the new web.
$baseWeb is the name of an existing web (a template web). If the base web is a system web, all topics in it will be copied into the new web. If it is a normal web, only topics starting with 'Web' will be copied. If no base web is specified, an empty web (with no topics) will be created. If it is specified but does not exist, an error will be thrown.
$opts is a ref to a hash that contains settings to be modified in
use Error qw( :try ); use Foswiki::AccessControlException (); try { Foswiki::Func::createWeb( "Newweb" ); } catch Foswiki::AccessControlException with { my $e = shift; # see documentation on Foswiki::AccessControlException } catch Foswiki::OopsException with { shift->throw(); # propagate } catch Error with { my $e = shift; # see documentation on Error } otherwise { ... };
use Error qw( :try ); use Foswiki::AccessControlException (); try { Foswiki::Func::moveWeb( "Oldweb", "Newweb" ); } catch Foswiki::AccessControlException with { my $e = shift; # see documentation on Foswiki::AccessControlException } catch Foswiki::OopsException with { shift->throw(); # propagate } catch Error with { my $e = shift; # see documentation on Error::Simple } otherwise { ... };To delete a web, move it to a subweb of
Foswiki::Func::moveWeb( "Deadweb", "Trash.Deadweb" );
$web Web name, e.g.
"Main", or empty
$topic Topic name, e.g.
"MyTopic", or
( $oopsUrl, $loginName, $unlockTime ) - The
$oopsUrl for calling redirectCgiQuery(), user's
$loginName, and estimated
$unlockTime in minutes, or ( '', '', 0 ) if no lease exists.
$script The script to invoke when continuing with the edit
$web Web name, e.g.
"Main", or empty
$topic Topic name, e.g.
"MyTopic", or
$lock 1 to lease the topic, 0 to clear an existing lease
edit script
always takes out a lease.
It is impossible to fully lock a topic. Concurrent changes will be
$web - web for the topic
$topic - topic name
$meta - reference to Foswiki::Meta object (optional, set to undef to create a new topic containing just text, or to just change that topic's text)
$text - text of the topic (without embedded meta-data!!!
\%options - ref to hash of save options
\%options may include:
|mark this change so it doesn't appear in the statistics
|True if this change is not to be notified
|force the save to increment the revision counter
|don't check acls
use Error qw( :try ); use Foswiki::AccessControlException (); my( $meta, $text ); if (Foswiki::Func::topicExists($web, $topic)) { ( $meta, $text ) = Foswiki::Func::readTopic( $web, $topic ); } else { #if the topic doesn't exist, we can either leave $meta undefined #or if we need to set more than just the topic text, we create a new Meta object and use it. $meta = new Foswiki::Meta($Foswiki::Plugins::SESSION, $web, $topic ); $text = ''; } $text =~ s/APPLE/ORANGE/g; try { Foswiki::Func::saveTopic( $web, $topic, $meta, $text ); } catch Foswiki::AccessControlException with { my $e = shift; # see documentation on Foswiki::AccessControlException } catch Foswiki::OopsException with { shift->throw(); # propagate } catch Error with { my $e = shift; # see documentation on Error::Simple } otherwise { ... };In the event of an error an exception will be thrown. Callers can elect to trap the exceptions thrown, or allow them to propagate to the calling environment. May throw Foswiki::OopsException or Error::Simple. Note: The
ignorepermissions option is only available in Foswiki 1.1 and
$web source web - required
$topic source topic - required
$newWeb dest web
$newTopic dest topic
use Error qw( :try ); try { moveTopic( "Work", "TokyoOffice", "Trash", "ClosedOffice" ); } catch Foswiki::AccessControlException with { my $e = shift; # see documentation on Foswiki::AccessControlException } catch Foswiki::OopsException with { shift->throw(); # propagate } catch Error with { my $e = shift; # see documentation on Error::Simple } otherwise { ... };
$web - web for topic
$topic - topic to atach to
$attachment - name of the attachment
\%opts - Ref to hash of options
\%opts may include:
|mark this change so it is not picked up in statistics
|comment for save
|if the attachment is to be hidden in normal topic view
|Stream of file to upload
|Name of a file to use for the attachment data. ignored if stream is set. Local file on the server.
|Client path to file
|Size of uploaded data
|Set true to create a link at the end of the topic
|Set to true to prevent this upload being recorded in the meta-data of the topic.
try { Foswiki::Func::saveAttachment( $web, $topic, 'image.gif', { file => 'image.gif', comment => 'Picture of Health', hide => 1 } ); } catch Foswiki::AccessControlException with { # Topic CHANGE access denied } catch Foswiki::OopsException with { shift->throw(); # propagate } catch Error with { # see documentation on Error } otherwise { ... };This is the way 99% of extensions will create new attachments. See
Foswiki::Meta::openAttachment for a much lower-level interface.
$web source web - required
$topic source topic - required
$attachment source attachment - required
$newWeb dest web
$newTopic dest topic
$newAttachment dest attachment
use Error qw( :try ); try { # move attachment between topics moveAttachment( "Countries", "Germany", "AlsaceLorraine.dat", "Countries", "France" ); # Note destination attachment name is defaulted to the same as source } catch Foswiki::AccessControlException with { my $e = shift; # see documentation on Foswiki::AccessControlException } catch Foswiki::OopsException with { shift->throw(); # propagate } catch Error with { my $e = shift; # see documentation on Error };
$web source web - required
$topic source topic - required
$attachment source attachment - required
$newWeb dest web
$newTopic dest topic
$newAttachment dest attachment
use Error qw( :try ); try { # copy attachment between topics copyAttachment( "Countries", "Germany", "AlsaceLorraine.dat", "Countries", "France" ); # Note destination attachment name is defaulted to the same as source } catch Foswiki::AccessControlException with { my $e = shift; # see documentation on Foswiki::AccessControlException } catch Foswiki::OopsException with { shift->throw(); # propagate } catch Error with { my $e = shift; # see documentation on Error };Since: 19 Jul 2010
$time and now. $time is a time in seconds since 1st Jan 1970, and is not
guaranteed to return any changes that occurred before (now -
{Store}{RememberChangesFor}). {Store}{RememberChangesFor}) is a
setting in
configure. Changes are returned in most-recent-first
Use it as follows:
my $iterator = Foswiki::Func::eachChangeSince( $web, time() - 7 * 24 * 60 * 60); # the last 7 days while ($iterator->hasNext()) { my $change = $iterator->next(); ... }
$change is a reference to a hash containing the following fields:
verb - the action - one of
update - a web, topic or attachment has been modified
insert - a web, topic or attachment is being inserted
remove - a topic or attachment is being removed
time - time of the change, in epoch-secs
cuid - canonical UID of the user who is making the change
revision - the revision of the topic that the change appears in
path - web.topic path for the affected
attachment - attachment name (optional)
oldpath - web.topic path for the origin of a move
oldattachment - origin of move
minor - boolean true if this change is flagged as minor
comment - descriptive text
more - formatted string indicating if the change was minor or not
topic - name of the topic the change occurred to
user - wikiname of the user who made the change
topic and
can be assumed.
$topic - topic (required)
$orev - older rev (required)
$nrev - later rev (may be undef for the latest)
$tml - if true will generate renderable TML (i.e. HTML with NOPs. if false will generate a summary suitable for use in plain text (mail, for example)
$nochecks if true, will suppress access control checks. (Since 2.0)
$tml is not set, all HTML will be removed.
In non-tml, lines are truncated to 70 characters. Differences are shown using + and - to indicate added and removed text.
If access is denied to either revision, then it will be treated as blank
Since 2009-03-06
$name - Template name, e.g.
$skin - Comma-separated list of skin names, optional, e.g.
$text Template text
$name - template file name
$skin - comma-separated list of skins to use (default: current skin)
$web - the web to look in for topics that contain templates (default: current web)
%TMPL:P{$def}%, only expanding the template (not expanding any variables other than
$def - template name or parameters (as a string)
%TMPL:DEF% statement in a template
file. See the documentation on Foswiki templates for more information.
#load the templates (relying on the system-wide skin path.)
#get the 'profile' DEF section
my $tml = Foswiki::Func::expandTemplate('profile');
#get the 'profile' DEF section expanding the inline Template macros (such as %USER% and %TYPE%)
#NOTE: when using it this way, it is important to use the double quotes "" to delineate the values of the parameters.
my $tml = Foswiki::Func::expandTemplate(
'"profile" USER="' . $user . '" TYPE="' . $type . '"' );
$text - Text with variables to expand, e.g.
'Current user is %WIKIUSER%'
$topic - Current topic name, optional, e.g.
$web - Web name, optional, e.g.
'Main'. The current web is taken if missing
$meta - topic meta-data to use while expanding
$text Expanded text, e.g.
'Current user is WikiGuest'
See also: expandVariablesOnTopicCreation
Caution: This function needs all the installed plugins to have gone through initialization.
Never call this function from within an initPlugin handler, bad things happen.
Caution: This function ultimately calls the following handlers:
registered macro handlers
$text - the text to process
%DATE% Signature-format date
%SERVERTIME% See Macros
%GMTIME% See Macros
%USERNAME% Base login name
%WIKINAME% Wiki name
%WIKIUSERNAME% Wiki name with prepended web
%URLPARAM{...}% - Parameters to the current CGI query
%NOP% No-op
$text - Text to render, e.g.
'*bold* text and =fixed font='
$web - Web name, optional, e.g.
'Main'. The current web is taken if missing
$topic - topic name, optional, defaults to web home
$text XHTML text, e.g.
'<b>bold</b> and <code>fixed font</code>'
NOTE: renderText expects that all %MACROS% have already been expanded - it does not expand them for you (call expandCommonVariables above).
$pre - Text occuring before the link syntax, optional
$web - Web name, required, e.g.
$topic - Topic name to link to, required, e.g.
$label - Link label, required. Usually the same as
$topic, e.g.
$anchor - Anchor, optional, e.g.
$createLink - Set to
'1' to add question linked mark after topic name if topic does not exist;
'0' to suppress link for non-existing topics
$text XHTML anchor, e.g.
'<a href='/cgi-bin/view/Main/WebNotify#Jump'>notify</a>'
$zone - name of the zone
$id - unique ID
$data - the content.
requires optional, comma-separated list of
$id identifiers that should precede the content
$data will be expanded before being inserted into the
<head> section.
Note: Read the developer supplement at Foswiki:Development.AddToZoneFromPluginHandlers if you are
addToZone() from a rendering or macro/tag-related plugin handler
Foswiki::Func::addToZone( 'head', 'PATTERN_STYLE', '<link rel="stylesheet" type="text/css" href="%PUBURL%/Foswiki/PatternSkin/layout.css" media="all" />'); Foswiki::Func::addToZone( 'script', 'MY_JQUERY', '<script type="text/javascript" src="%PUBURL%/Myweb/MyJQuery/myjquery.js"></scipt>', 'JQUERYPLUGIN::FOSWIKI');
$query - CGI query object. Ignored, only there for compatibility. The session CGI query object is used instead.
$url - URL to redirect to
$passthru - enable passthrough.
$status - HTTP status code (30x) to redirect with. Optional, defaults to 302. Since 2012-03-28
Location HTTP header that will cause a redirect to a new URL.
Nothing more should be printed to STDOUT after this method has been called.
$passthru parameter allows you to pass the parameters that were passed
to the current query on to the target URL, as long as it is another URL on the
same installation. If
$passthru is set to a true value, then Foswiki
will save the current URL parameters, and then try to restore them on the
other side of the redirect. Parameters are stored on the server in a cache
Note that if
$passthru is set, then any parameters in
$url will be lost
when the old parameters are restored. if you want to change any parameter
values, you will need to do that in the current CGI query before redirecting
my $query = Foswiki::Func::getRequestObject(); $query->param(-name => 'text', -value => 'Different text'); Foswiki::Func::redirectCgiQuery( undef, Foswiki::Func::getScriptUrl($web, $topic, 'edit'), 1);
$passthru does nothing if
$url does not point to a script in the current
Foswiki installation.
File::Temp or related
File::Spec functions.
$filename - Full path name of file
$unicode - Specify that file contains unicode text New with Foswiki 2.0
$text Content of file, empty if not found
NOTE: Use this function only for the Plugin workarea, not for topics and attachments. Use the appropriate functions to manipulate topics and attachments.
Foswiki 2.0 APIs generally all use UNICODE strings, and all data is properly decoded from/to utf-8 at the edge. This API is an exception!
Because this API can be used to retrieve data of any type including binary data, it is not decoded to unicode by default.
By default, data is read as raw bytes, without any encoding layer.
If you are using this API to read topic originated data, topic names, etc. then you should set the
$unicode flag so that the data returned is a valid perl character string.
$filename - Full path name of file
$text - Text to save
$unicode - Flag indicates that $text string should be saved as utf-8. New with Foswiki 2.0
$unicode flag so that the data returned as a valid perl character string.
Failure to set the
$unicode flag when required will result in perl "Wide character in print" errors.
$web - Web name, identifying variable, or empty string
$topic - Topic name, may be a web.topic string, required.
|( 'Web', 'Topic' )
|( 'Web', 'Topic' )
|( '', 'Topic' )
|( 'Main', 'Topic' )
|( '', '' )
|( 'Main', 'WebHome' )
|( '', 'Web/Topic' )
|( 'Web', 'Topic' )
|( '', 'Web/Subweb/Topic' )
|( 'Web/Subweb', 'Topic' )
|( '', 'Web.Topic' )
|( 'Web', 'Topic' )
|( '', 'Web.Subweb.Topic' )
|( 'Web/Subweb', 'Topic' )
|( 'Web1', 'Web2.Topic' )
|( 'Web2', 'Topic' )
|( 'Web1', 'Web2.' )
|( 'Web2', 'WebHome' )
The symbols %USERSWEB%, %SYSTEMWEB% and %DOCWEB% can be used in the input to represent the web names set in $cfg{UsersWebName} and $cfg{SystemWebName}. For example:
|( '%USERSWEB%', 'Topic' )
|( 'Main', 'Topic' )
|( '%SYSTEMWEB%', 'Topic' )
|( 'System', 'Topic' )
|( '', '%DOCWEB%.Topic' )
|( 'System', 'Topic' )
$searchString - the search string, as appropriate for the selected type
$topics - undef OR reference to a ResultSet, Iterator, or array containing the web.topics to be evaluated. if undef, then all the topics in the webs specified will be evaluated.
\%option - reference to an options hash
\%options hash may contain the following options:
type -
query, ... defaults to
web - The web/s to search in - string can have the same form as the
web param of SEARCH (if not specified, defaults to BASEWEB)
casesensitive - false to ignore case (default true)
files_without_match - true to return files only (default false). If
files_without_match is specified, it will return on the first match in each topic (i.e. it will return only one match per
includeTopics - Seach only in this topic, a topic with asterisk wildcards, or a list of topics separated by comma
excludeTopics - Exclude search in this topic, a topic with asterisk wildcards, or a list of topics separated by comma
my $matches = Foswiki::Func::query( "Slimy Toad", undef, { web => 'Main,San*', casesensitive => 0, files_without_match => 0 } ); while ($matches->hasNext) { my $webtopic = $matches->next; my ($web, $topic) = Foswiki::Func::normalizeWebTopicName('', $webtopic); ...etc
parameters that are used to block evaluation of paramater strings.
For example, if you were to write
then %WURBLE would be expanded before %MYTAG is evaluated. To avoid
this Foswiki uses escapes in the format string. For example:
This lets you enter arbitrary strings into parameters without worrying that
Foswiki will expand them before your plugin gets a chance to deal with them
properly. Once you have processed your tag, you will want to expand these
tokens to their proper value. That's what this function does.
The set of tokens that is expanded is described in FormatTokens.
$value is true, and 0 otherwise. "true" means set to
something with a Perl true value, with the special cases that "off",
"false" and "no" (case insensitive) are forced to false. Leading and
trailing spaces in
$value are ignored.
If the value is undef, then
$default is returned. If
$default is
not specified it is taken as 0.
$text - Word to test
$attr - Attribute string
%params Hash containing all parameters. The nameless parameter is stored in key
%TEST{ 'nameless' name1="val1" name2="val2" }%
{...} to get:
'nameless' name1="val1" name2="val2"
%params hash contains now:
_DEFAULT => 'nameless'
name1 => "val1"
name2 => "val2"
$attr - Attribute string
$name - Name, optional
$value Extracted value
%TEST{ 'nameless' name1="val1" name2="val2" }%
{...} to get:
'nameless' name1="val1" name2="val2"
my $noname = Foswiki::Func::extractNameValuePair( $text );
my $val1 = Foswiki::Func::extractNameValuePair( $text, "name1" );
my $val2 = Foswiki::Func::extractNameValuePair( $text, "name2" );
$text - text of the mail, including MIME headers
$retries - number of times to retry the send (default 1)
To: email@example.com From: email@example.com CC: firstname.lastname@example.com Subject: Revolution Dear Liz, Please abolish the monarchy (with King George's permission, of course) Thanks, A. PeasantLeave a blank line between the last header field and the message body.
$action - name of the event (keep them unique!)
$extra - arbitrary extra information to add to the log.
eachEventSince function.
NOTE: Older plugins may use
$Foswiki::cfg{LogFileName}. These
plugins must be modified to use
writeEvent and
eachEventSince instead.
To maintain compatibility with older Foswiki releases, you can write
conditional code as follows:
if (defined &Foswiki::Func::writeEvent) { # use writeEvent and eachEventSince } else { # old code using {LogFileName} }Note that the ability to read/write
$Foswiki::cfg{LogFileName} is
maintained for compatibility but is deprecated (should not be used
in new code intended to work only with Foswiki 1.1 and later) and will
not work with any installation that stores logs in a database.
$text - Text to write; timestamp gets added
$text - Text to write; timestamp gets added
$time - a time in the past (seconds since the epoch)
$level - log level to return events for.
$time and now. Events are written to the event log using
writeEvent. The Foswiki core will write other events that will
also be returned.
If the chosen Logger does not support querying the logs, an empty
iterator will be returned. The supplied PlainFile and Compatibility loggers
will return events only if the log files have not been archived.
Events are returned in oldest-first order.
Each event is returned as a reference to an array. The elements are:
my $it = Foswiki::Func::eachEventSince(Foswiki::Time::parseTime("1 Apr 2010")); while ($it->hasNext()) { my $entry = $it->next(); my $date = $entry->[0]; my $loginName = $entry->[1]; ... }
Foswiki::Func, or new handlers). Sometimes these improvements mean that old functions have to be deprecated to keep the code manageable. When this happens, the deprecated functions will be supported in the interface for at least one more release, and probably longer, though this cannot be guaranteed.
Updated plugins may still need to define deprecated handlers for compatibility with old Foswiki versions. In this case, the plugin package that defines old handlers can suppress the warnings in %FAILEDPLUGINS%.
This is done by defining a map from the handler name to the
Foswiki::Plugins version in which the handler was first deprecated. For example, if we need to define the
endRenderingHandler for compatibility with
Foswiki::Plugins versions before 1.1, we would add this to the plugin:
package Foswiki::Plugins::SinkPlugin; use vars qw( %FoswikiCompatibility ); $FoswikiCompatibility{endRenderingHandler} = 1.1;If the currently-running code version is 1.1 or later, then the handler will not be called and the warning will not be issued. Wersions of
Foswiki::Plugins before 1.1 will still call the handler as required.
The following functions are retained for compatibility only. You should
stop using them as soon as possible.
$Foswiki::regex{...} instead, it is directly
See DevelopingPlugins for more information
$web - Web name, e.g.
'Main'. The current web is taken if empty
$topic - Topic name, e.g.
$template - Oops template name, e.g.
'oopsmistake'. The 'oops' is optional; 'mistake' will translate to 'oopsmistake'.
$param1 ...
$param4 - Parameter values for %PARAM1% ... %PARAMn% variables in template, optional
$url URL, e.g.
"http://example.com:80/cgi-bin/oops.pl/ Main/WebNotify?template=oopslocked¶m1=joe"
Deprecated 28 Nov 2008, the recommended approach is to throw an oops exception.
use Error qw( :try ); throw Foswiki::OopsException( 'toestuckerror', web => $web, topic => $topic, params => [ 'I got my toe stuck' ]);(this example will use the
oopstoestuckerror template.)
If this is not possible (e.g. in a REST handler that does not trap the exception)
then you can use
getScriptUrl instead:
my $url = Foswiki::Func::getScriptUrl($web, $topic, 'oops', template => 'oopstoestuckerror', param1 => 'I got my toe stuck'); Foswiki::Func::redirectCgiQuery( undef, $url ); return 0;
$wikiname - wiki name of the user
$web - Web name, required, e.g.
getPreferencesValue instead to determine
what permissions are set on the web, for example:
foreach my $type (qw( ALLOW DENY )) { foreach my $action (qw( CHANGE VIEW )) { my $pref = $type . 'WEB' . $action; my $val = Foswiki::Func::getPreferencesValue( $pref, $web ) || ''; if( $val =~ m/\S/ ) { print "$pref is set to $val on $web\n"; } } }
getListOfWebs instead.
Get list of all public webs, e.g. all webs and subwebs that do not have the
NOSEARCHALL flag set in the WebPreferences
@webs List of all public webs and subwebs
Foswiki::Time::formatTime instead (it has an identical interface).
Format the time in seconds into the desired time string
$time - Time in epoch seconds
$format - Format type, optional. Default e.g.
'31 Dec 2002 - 19:30'. Can be
'$iso' (e.g.
'$rcs' (e.g.
'2001/12/31 23:59:59',
'$http' for HTTP header format (e.g.
'Thu, 23 Jul 1998 07:21:56 GMT'), or any string with tokens
'$seconds, $minutes, $hours, $day, $wday, $month, $mo, $year, $ye, $tz' for seconds, minutes, hours, day of month, day of week, 3 letter month, 2 digit month, 4 digit year, 2 digit year, timezone string, respectively
$timezone - either not defined (uses the displaytime setting), 'gmtime', or 'servertime'
$text Formatted time string
|if you used the removed formatGmTime, add a third parameter 'gmtime'
Foswiki::Time::formatTime instead.
Format the time to GM time
$time - Time in epoc seconds
$format - Format type, optional. Default e.g.
'31 Dec 2002 - 19:30', can be
'iso' (e.g.
'rcs' (e.g.
'2001/12/31 23:59:59',
'http' for HTTP header format (e.g.
'Thu, 23 Jul 1998 07:21:56 GMT')
$text Formatted time string
getRequestObject instead if you can. Code
that is expected to run with pre-1.1 versions of Foswiki will still need to
use this method, as
getRequestObject will not be available.
$web - Web name, e.g.
'Main', or empty
$topic - Topic name, e.g.
'MyTopic', or
$rev - Topic revision to read, optional. Specify the minor part of the revision, e.g.
"5", not
"1.5"; the top revision is returned if omitted or empty.
$ignorePermissions - Set to
"1" if checkAccessPermission() is already performed and OK; an oops URL is returned if user has no permission
$text Topic text with embedded meta data; an oops URL for calling redirectCgiQuery() is returned in case of an error
*Deprecated: 6 Aug 2009. Use
readTopic instead.
This method returns meta-data embedded in the text. Plugins authors must be very careful to avoid damaging meta-data. Use readTopic instead, which is a lot safer and supports the full set of read options.
$web - Web name, e.g.
'Main', or empty
$topic - Topic name, e.g.
'MyTopic', or
$text - Topic text to save, assumed to include meta data
$ignorePermissions - Set to
"1" if checkAccessPermission() is already performed and OK
$dontNotify - Set to
"1" if not to notify users of the change
saveTopic supports embedded meta-data in the saved text, and also
supports the full set of save options.
$oopsUrl Empty string if OK; the
$oopsUrl for calling redirectCgiQuery() in case of error
my $text = Foswiki::Func::readTopicText( $web, $topic ); # check for oops URL in case of error: if( $text =~ m/^http.*?\/oops/ ) { Foswiki::Func::redirectCgiQuery( $query, $text ); return; } # do topic text manipulation like: $text =~ s/old/new/g; # do meta data manipulation like: $text =~ s/(META\:FIELD.*?name\=\"TopicClassification\".*?value\=\")[^\"]*/$1BugResolved/; $oopsUrl = Foswiki::Func::saveTopicText( $web, $topic, $text ); # save topic text
$data to the HTML header (the <head> tag).
Deprecated 26 Mar 2010 - use
addZoZone('head', ...).
Note: Any calls using addToHEAD for javascript should be rewritten to use the
script zone in addToZone as soon as possible.
Foswiki::Func::addToHEAD("id", "<script>...</script>", "JQUERYPLUGIN");To:
Foswiki::Func::addToZone("script", "id", "<script>...</script>", "JQUERYPLUGIN");The reason is that all <script> markup should be added to a dedicated zone, script, and so any usage of ADDTOHEAD - which adds to the head zone - will be unable to satisfy ordering requirements when the requirements exist in another zone ( script ). See Foswiki:Development/UpdatingExtensionsScriptZone for more details.
query( ...).
WARNING: This function has been deprecated in foswiki 1.1.0 for scalability reasons
Search for a string in the content of a web. The search is over all content, including meta-data.
Meta-data matches will be returned as formatted lines within the topic content (meta-data matches are returned as lines of the format %META:\w+{.*}%)
$searchString - the search string, in egrep format
$web - The web/s to search in - string can have the same form as the
web param of SEARCH
\@topics - reference to a list of topics to search (if undef, then the store will search all topics in the specified web/webs.)
\%option - reference to an options hash
\%options hash may contain the following options:
type -
query - defaults to
casesensitive - false to ignore case (default true)
files_without_match - true to return files only (default false). If
files_without_match is specified, it will return on the first match in each topic (i.e. it will return only one match per topic, and will not return matching lines).
my $matches = Foswiki::Func::searchInWebContent( "Slimy Toad", $searchWeb, \@topics, { casesensitive => 0, files_without_match => 0 } ); foreach my $topic (keys(%$matches)) { ...etc


text:
"PGH" Pittsburgh On a Bar Wall Decor
DIMENSIONS: 9"x12"
WEIGHT: .025lbs
CARE INSTRUCTIONS: This sign is made out of mild steel, so we recommend hanging indoors if you want to avoid any chance of rusting! Signs can also be easily weather-protected by coating it with Rustoleum Spray Paint. A slightly damp cloth can be used for fingerprint removal or other markings; dry product quickly as oxidation may occur if water is left on the product for too long. Because we use recycled steel, each piece will be unique and may have slight markings or patina.
We recommend hanging most of our signs with velcro 3M command strips!
* We offer volume discounts at quantities of 12 or more!
CLICK HERE to learn more.


text: ... source for real estate in Victoria and the surrounding area. Looking to purchase a new home? Avoid feeling overwhelmed and use my experience and knowledge to find the home of your dreams. Thinking of selling? Exposure is everything. Leverage my experience and marketing tools to turn 'selling' into 'sold'. Have questions? I'm here to help find answers and provide insights into the local area.


text:
Add $99 to qualify for Free Ground Shipping*
ONLY 11.95 flat rate shipping on orders under $99.
Mon-Thu 8am-6pm
Fri 8am-5pm
Light Bulbs
Ballasts & Drivers
Lighting Fixtures
Projector Lamps
Electric Vehicle Chargers
Germicidal Products
Air Quality
Life and Safety Products
Hand Tools
Horticultural Lighting Products
Light Control Products
Smart Lighting
Our easy-to-use BulbFinder will let you find the correct bulb, step by step.
Select a bulb category to get started
243 Stafford St.
Worcester, MA 01603
Tel. 1 (888) 455-2800
Fax 1.508.363.2900
The Business Lighting Experts
45 Watt, 175 Watt Equivalent, 5000K Dusk to Dawn Barn Light LED Fixture with Photocell
SKU: BL-37687 | Ordering Code: BL-45W50K-PC
Sign up to receive our best offers
Stay connected with Bulbs.com
Accepted Payments


text:
Key Features
- Hairball Control
- Reduce Risk of Kidney Stones
- Urinary Tract Infection
- Rich in Omega 3 & 6
- No Pork, No Lard
- No Artificial Preservatives
Kit Cat wet food was created by our nutritionists who are also cat lovers and made with the goodness of carefully selected natural ingredients which contains no added colours or preservatives. Our Kit Cat 100% grain free diet offers your cat a pH level balance wholesome nutrition to support a healthy lifestyle, reducing risk of kidney stones and urinary tract infection. With selected quality deboned meat containing
essential vitamins, our Kit Cat formula also has an optimal ration of omega-3 to omega-6 fatty acids that promotes a healthy heart, skin and coat for your cats. In addition, this diet contains Fructooligosaccharides which promotes a healthier digestive track and taurine for healthy eyes.
Grain Free
All Life Stages
Taurine Added
Fresh Deboned Chicken, Fresh Deboned Tuna, Crabstick, Water Sufficient For Processing, Vitamin E Supplements (Alpha-Tocopherol), Taurine, Fructooligosaccharides, Gelling Agents, Tuna Extract.
Guaranteed Analysis
Crude Protein 10.0%
Crude Fat(min) 0.05%
Crude Fiber(max) 1.0%
Crude Ash(max) 3.0%
Moisture(max) 85.0%