var org = {p3k: ({url:"http://news.thomasnet.com/conewsxml/378233", xml:"<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n<!-- generator=\"FeedCreator 1.7.1\" -->\n<rss version=\"2.0\">\n    <channel>\n        <title>RSS Feed for Garlock Sealing Technologies</title>\n        <description>ThomasNet News is a service of ThomasNet.com</description>\n        <link>http://news.thomasnet.com</link>\n        <lastBuildDate>Sun, 05 Sep 2010 23:21:09 -0400</lastBuildDate>\n        <generator>FeedCreator 1.7.1</generator>\n        <image>\n            <url>http://news.thomasnet.com/images/header/TN_News_footer.gif</url>\n            <title>Powered by ThomasNet News</title>\n            <link>http://news.thomasnet.com</link>\n            <width>129</width>\n            <height>38</height>\n        </image>\n        <item>\n            <title>\nGarlock Flange Free Gasket Coating Wins IMPOvation Award\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Flange-Free-Gasket-Coating-Wins-IMPOvation-Award-829971</link>\n            <description>\nPalmyra, N.Y., September 30, 2009 - The readers of Industrial Maintenance &amp;amp; Plant Operation (IMPO) magazine have selected Garlock Sealing Technologies'  Flange Free(TM) anti-stick gasket coating for the publication's first annual &quot;Top 15 IMPOvation&quot; product technology award. Featured in the September issue, winners of the award were chosen from a field of 100 nominees.\n\nPlacing 10th in the voting, Flange Free dramatically reduces the time and effort required to remove treated gaskets. Unlike ...&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/materials-material-processing' target='_blank''&gt;Materials and Material Processing&lt;/a&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/paints-coatings' target='_blank''&gt;Paints and Coatings&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/stickiness-control-agents-590737-1.html' target='_blank''&gt;Stickiness Control Agents&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/antistick-coatings-15700453-1.html' target='_blank''&gt;Anti-Stick Coatings&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Thu, 08 Oct 2009 08:29:30 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Wins Fourth Environmental Award for Solvent Elimination Project\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Wins-Fourth-Environmental-Award-for-Solvent-Elimination-Project-829558</link>\n            <description>\nPalmyra, N.Y., September 8, 2009 - The National Pollution Prevention Roundtable (NPPR) has honored Garlock Sealing Technologies with its 2009 MVP2 Award for the Best P2 pollution prevention project. The award will be presented at a special ceremony at the organization's Washington, D.C., headquarters on September 22. \n\nThe project, which eliminated use of a volatile organic compound (VOC) and hazardous air pollutant (HAP) from production of Garlock's industrial sheet gaskets, has recently ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Mon, 14 Sep 2009 08:32:29 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Garners EPA Clean Air Award\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Garners-EPA-Clean-Air-Award-826962</link>\n            <description>\nPalmyra, N.Y., May 19, 2009 - Garlock Sealing Technologies has received the U.S Environmental Protection Agency's 2008 Clean Air Excellence Award for using a more environmentally friendly solvent in the production of its industrial gasketing.\n\n&quot;From the over 120 applications received, Garlock's project was chosen by the EPA's Office of Air and Radiation for its impact, innovation, and replicability,&quot; said EPA administrator, Pat Childers, in announcing the award. &quot;Garlock is to be congratulated ...&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/mounting-attaching-products' target='_blank''&gt;Mounting and Attaching Products&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/pipe-gaskets-33290800-1.html' target='_blank''&gt;Pipe Gaskets&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Fri, 22 May 2009 08:27:15 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Sweeps Rochester Business Journal's 12th Annual 'Best of the Web' \n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Sweeps-Rochester-Business-Journal-s-12th-Annual-Best-of-the-Web-824517</link>\n            <description>\nPalmyra, N.Y., February 19, 2009  - The Rochester Business Journal has \nhonored Garlock Sealing Technologies with the Overall-Gold award in its \n2009 &quot;Best of the Web&quot; competition. The producer of industrial fluid sealing \ndevices also won an award for the best Web site in the manufacturing \ncategory.\n\nA panel of judges selected the Garlock site, which was one of three finalists \nin its category, from hundreds of nominations &quot;based on the content of the \nsite, usefulness, navigation, use of ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Tue, 24 Feb 2009 08:34:19 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Gaskets Help Boost Pressure Capability of New Corzan&amp;#174; CPVC Flange Kits\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Gaskets-Help-Boost-Pressure-Capability-of-New-Corzan-CPVC-Flange-Kits-824473</link>\n            <description>\nPalmyra, N.Y., February 16, 2009 - Stress Saver&amp;#174; XP gaskets  from Garlock Sealing Technologies allow pump, valve and other connections made with The Lubrizol Corporation's new Corzan&amp;#174; High-Pressure Flange Kit to withstand the same pressure as the Corzan CPVC piping systems in which they are installed.\n\nAs a result, these flanged joints are no longer limited to the 150 psi rating of typical CPVC flanges. \n\nCertified to ANSI/NSF Standard 61, Garlock's Stress Saver XP gaskets are the first to be ...&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/mounting-attaching-products' target='_blank''&gt;Mounting and Attaching Products&lt;/a&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/fluid-gas-flow-equipment' target='_blank''&gt;Fluid and Gas Flow Equipment&lt;/a&gt; Sponsored by:  &lt;a target='_blank' href='http://news.thomasnet.com/redir.html?lnty=rssad&amp;spclid=3243&amp;prid=824473&amp;cat=954&amp;goto=http%3A%2F%2Fwww.snap-titequickdisconnects.com'&gt;SNAP-TITE INC. Quick Disconnect and Valve Div. - Quick Disconnect Coupling Solutions&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/molded-gaskets-33260522-1.html' target='_blank''&gt;Molded Gaskets&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/pump-gaskets-33310806-1.html' target='_blank''&gt;Pump Gaskets&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/flanged-fittings-29752201-1.html' target='_blank''&gt;Flanged Fittings&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/flange-gaskets-33180605-1.html' target='_blank''&gt;Flange Gaskets&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Thu, 26 Feb 2009 08:34:55 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Wins Air Quality Award for VOC Elimination\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Wins-Air-Quality-Award-for-VOC-Elimination-823624</link>\n            <description>\nPalmyra, N.Y., January 13, 2009 - Garlock Sealing Technologies has won a 2008 Business Achievement Award from the Environmental Business Journal for eliminating a volatile organic compound (VOC) and listed hazardous air pollutant (HAP) under the Clean Air Act with a more environmentally friendly solvent in its production of sheet gasketing. The award will be presented at a special ceremony on February 20 at the publication's Environmental Industry Summit VII in Coronado, Calif.\n\nGarlock ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Fri, 16 Jan 2009 08:38:35 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Promotes Stratton to Expansion Joint Product Manager\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Promotes-Stratton-to-Expansion-Joint-Product-Manager-821845</link>\n            <description>\nPalmyra, N.Y., October 29, 2008 - Garlock Sealing Technologies promoted Bruce Stratton to product manager for its line of expansion joints. \n\nStratton has worked for Garlock for six years, both in product engineering and manufacturing in its expansion joint operations. Previously he served as engineering manager for Alton Manufacturing, a tool and die manufacturer based in Rochester, N.Y.   \n\nHe holds a B.S. in mechanical engineering from the Rochester Institute of Technology, as well as an ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Tue, 11 Nov 2008 07:42:33 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nHicks to Lead Garlock's Line of Sheet Gasketing\n </title>\n            <link>http://news.thomasnet.com/companystory/Hicks-to-Lead-Garlock-s-Line-of-Sheet-Gasketing-821746</link>\n            <description>\nPalmyra, N.Y., October 24, 2008  - Garlock Sealing Technologies has promoted Chris Hicks to senior product manager for its extensive line of non- asbestos, high-pressure sheet gasketing and fabricated products.\n\nHicks joined Garlock 12 years ago, and has held positions of increasing responsibility, most recently as product manager for the company's line of expansion joints. He has also worked as a survey technician and product and field specialist.\n\nA graduate of SUNY Brockport, Hicks hold a ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Tue, 11 Nov 2008 07:42:33 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Awarded NYSEG Grant for Facility Upgrades\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Awarded-NYSEG-Grant-for-Facility-Upgrades-821284</link>\n            <description>\nPalmyra, N.Y., October 10, 2008 - New York State Gas and Electric \nCorporation (NYSEG) has awarded Garlock Sealing Technologies a $362,000 \ngrant to fund a portion of the company's Palmyra modernization project, \nwhich includes a recently completed, 51,000-sq.-ft. plant for production of \nits GYLON&amp;#174; PTFE gasket materials. A state-of-the art example of energy \nefficiency and resource conservation, the new building marks the second \nmajor milestone in the five-year, $35 million project. ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Wed, 15 Oct 2008 07:29:30 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Completes Second Phase of Major Modernization Project\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Completes-Second-Phase-of-Major-Modernization-Project-821184</link>\n            <description>\nPalmyra, N.Y., October 2, 2008 - Garlock Sealing Technologies has \ncompleted construction of a facility for the production of its GYLON&amp;#174; \nrestructured PTFE industrial gasketing products. The new facility, which also \nwill serve to consolidate all shipping and receiving activity for the company's \nPalmyra operations, will meet global demand for its GYLON products with the \npotential for significant expansion. \n\nBegun in August 2007, the new plant represents the second major phase of a ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Tue, 07 Oct 2008 07:52:13 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nFaulkner Takes Over Garlock GYLON&amp;#174; PTFE Product Line \n </title>\n            <link>http://news.thomasnet.com/companystory/Faulkner-Takes-Over-Garlock-GYLON-PTFE-Product-Line-821004</link>\n            <description>\nPalmyra, N.Y., September 24,2008 - Garlock Sealing Technologies has named Michael Faulkner senior product manager for its GYLON&amp;#174; product line. In his new position, Faulkner will be responsible for the company's premier offering, a family of gasket and diaphragm products that provides excellent chemical resistance and reduces creep relaxation associated with conventional PTFE gaskets.\n\n&quot;Mike will create growth opportunities for the GYLON brand, expanding into new markets both in the U.S. and ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Wed, 01 Oct 2008 07:36:33 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Refocuses Training Program to Reflect Environmental Issues\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Refocuses-Training-Program-to-Reflect-Environmental-Issues-819598</link>\n            <description>\nPalmyra, N.Y., August 6, 2008 -- In response to increased demand for varying levels of training, Garlock Sealing Technologies now offers customized, modular courses for authorized distributors, end-users and engineering firms. \n\nThe company's training programs range from providing a basic understanding of its various products to more in-depth &quot;Science of Sealing&quot; courses focusing on the proper selection and installation of sealing devices, as well as hands-on kiosks that are industry- and ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Mon, 11 Aug 2008 07:46:34 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Offers Brochure on Custom Flue Duct Expansion Joint\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Offers-Brochure-on-Custom-Flue-Duct-Expansion-Joint-816484</link>\n            <description>\nPalmyra, N.Y. -- Garlock Sealing Technologies has issued a four-page brochure on its new custom-engineered 8400-HT flue duct expansion joint. Ideal for low-pressure, lightweight piping and ductwork, it can withstand temperature excursions from -75o F to +2,200o F (-60o C to +1200o C), as well as exposure to corrosive gases such as SO2 and H2SO4. The brochure provides product and application overviews, plus information on application data submittal, design fundamentals, configurations and ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Fri, 25 Apr 2008 07:53:05 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nNew Sage GYLON&amp;#174; Gasket Brochure from Garlock Sealing Technologies\n </title>\n            <link>http://news.thomasnet.com/companystory/New-Sage-GYLON-Gasket-Brochure-from-Garlock-Sealing-Technologies-816280</link>\n            <description>\nPalmyra, N.Y. -- Garlock Sealing Technologies now offers a six-page brochure on its new Sage GYLON&amp;#174; gaskets for severe chemical services. Supplied in discrete-cut form, this high-performance PTFE gasket provides superior load retention, permeability, sealability and resistance to a broad range of hazardous chemicals. Covered in the brochure are physical properties including temperature, pressure, sealability, creep relaxation, recovery, tensile strength, modulus of elasticity, specific ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Fri, 18 Apr 2008 07:55:36 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Honored for Environmental Leadership\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Honored-for-Environmental-Leadership-816205</link>\n            <description>\nGasket manufacturer's modernization project stresses resource conservation  \n\nPalmyra, N.Y., April 8, 2008 -- The Rochester Business Journal today honored \nGarlock Sealing Technologies for its environmental leadership. The company, a \nleader in fluid sealing technology for more than 100years, was one of three \nhonorees in the category of environmental innovation, based on its \nconversion to a more environmentally friendly material for gasket production \nat its Palmyra, N.Y. facility. Other ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Tue, 15 Apr 2008 07:36:28 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Completes New Houston Plant\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Completes-New-Houston-Plant-815824</link>\n            <description>\nPalmyra, N.Y. -- Garlock Sealing Technologies, a leader in fluid sealing \ntechnology for more than 100 years, recently completed construction of a \nnew manufacturing and distribution facility in Houston, Texas. The 65,000-sq.-\nft plant will produce the company's metallic gasket products. To better \nsupport customers, Garlock has also expanded the distribution center with a \nbroader selection of product lines.\n\n&quot;The plant it replaces was nearly twice as large, but only half as efficient,&quot; \nsaid ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Fri, 04 Apr 2008 08:31:47 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Valve Stem Packing Tested to API 622 Fugitive Emissions Standard\n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Valve-Stem-Packing-Tested-to-API-622-Fugitive-Emissions-Standard-810684</link>\n            <description>\nGarlock Sealing Technologies, a leader in fluid sealing technology for more than 100 years, has successfully tested its Style 1303-FEP valve stem packing for compliance with the newly adopted API 622 Fugitive Emissions Standard. Measured leakage confirmed the packing meets the requirements of the most stringent U.S. state air quality laws and consent decrees. Yarmouth Laboratories, an independent testing facility in Yarmouth, Maine, conducted two iterations of the test.\n\nThe new API 622 ...&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/fluid-gas-flow-equipment' target='_blank''&gt;Fluid and Gas Flow Equipment&lt;/a&gt; Sponsored by:  &lt;a target='_blank' href='http://news.thomasnet.com/redir.html?lnty=rssad&amp;spclid=3243&amp;prid=810684&amp;cat=954&amp;goto=http%3A%2F%2Fwww.snap-titequickdisconnects.com'&gt;SNAP-TITE INC. Quick Disconnect and Valve Div. - Quick Disconnect Coupling Solutions&lt;/a&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/green-clean' target='_blank''&gt;Green &amp; Clean&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/valve-stem-packing-55990204-1.html' target='_blank''&gt;Valve Stem Packing&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Fri, 01 Feb 2008 07:46:29 -0400</pubDate>\n        </item>\n        <item>\n            <title>Valve Stem Packing simplifies leak detection and repair.</title>\n            <link>http://news.thomasnet.com/fullstory/Valve-Stem-Packing-simplifies-leak-detection-and-repair-559630</link>\n            <description>\nStyle 212-ULE is comprised of 1 braid manufactured from yarn with GRAPH-LOCK&amp;#174; strands contained by Inconel&amp;#174; filament jacket, and second braid composed of graphite fiber and yarns. It withstands temperatures from -328 to +1,200&amp;#176;F in steam and non-oxidizing environments and up to 850&amp;#176;F in media containing free O2. Maximum pressure rating is 4,500 psig and pH rating is 0-14. Self-lubricating, corrosion-resistant packing is available in diameters of 1/8-5/8 in. and is fire-tested to API 589.\n&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/fluid-gas-flow-equipment' target='_blank''&gt;Fluid and Gas Flow Equipment&lt;/a&gt; Sponsored by:  &lt;a target='_blank' href='http://news.thomasnet.com/redir.html?lnty=rssad&amp;spclid=3243&amp;prid=559630&amp;cat=954&amp;goto=http%3A%2F%2Fwww.snap-titequickdisconnects.com'&gt;SNAP-TITE INC. Quick Disconnect and Valve Div. - Quick Disconnect Coupling Solutions&lt;/a&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/lubricants' target='_blank''&gt;Lubricants&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/valve-stem-packing-55990204-1.html' target='_blank''&gt;Valve Stem Packing&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/selflubricating-packing-55920409-1.html' target='_blank''&gt;Self-Lubricating Packing&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Fri, 08 May 2009 09:08:15 -0400</pubDate>\n        </item>\n        <item>\n            <title>Anti-Stick Agent accelerates gasket removal.</title>\n            <link>http://news.thomasnet.com/fullstory/Anti-Stick-Agent-accelerates-gasket-removal-550906</link>\n            <description>\nFused to surface of gasket material, Flange Free(TM) reduces time and effort required to remove gaskets from flanged joints after extended service. Inorganic coating does not contain chemicals that can cause gaskets to crack or otherwise degrade. Treatment reduces potential for residual particles to adversely affect performance of replacement gaskets or break loose, contaminate piping systems, and impair operation of downstream equipment.\n&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/paints-coatings' target='_blank''&gt;Paints and Coatings&lt;/a&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/materials-material-processing' target='_blank''&gt;Materials and Material Processing&lt;/a&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/mounting-attaching-products' target='_blank''&gt;Mounting and Attaching Products&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/antistick-coatings-15700453-1.html' target='_blank''&gt;Anti-Stick Coatings&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/stickiness-control-agents-590737-1.html' target='_blank''&gt;Stickiness Control Agents&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/adhesive-backed-gaskets-33000209-1.html' target='_blank''&gt;Adhesive Backed Gaskets&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Tue, 28 Oct 2008 07:33:32 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Forms Applications Engineering, Training Unit \n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Forms-Applications-Engineering-Training-Unit-545878</link>\n            <description>\nPalmyra, N.Y., June 17, 2008 -- Garlock Sealing Technologies has formalized its applications engineering, training and customer support functions with the creation of a dedicated unit under the leadership of Matt Tones, a 15-year veteran and third-generation employee of the company.\n\nThe new unit will work on a cross-functional basis with Garlock's engineering, product development, customer support, sales and marketing departments to bring the company's extensive knowledge base to these ...</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Thu, 19 Jun 2008 07:46:49 -0400</pubDate>\n        </item>\n        <item>\n            <title>Custom Expansion Joint targets flue duct systems.</title>\n            <link>http://news.thomasnet.com/fullstory/Custom-Expansion-Joint-targets-flue-duct-systems-540661</link>\n            <description>\nOffered in variety of configurations and material combinations, Model 8400-HT is intended for low-pressure, lightweight piping and ductwork applications, and can withstand temperature excursions from -75 to +2,200&amp;#176;F. Joint can be constructed with blend of fluoropolymers and reinforcing materials that provide resistance to corrosive gases such as SO&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; and H&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;SO&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;, making it suitable for most operating conditions in flue gas desulphurization systems.\n&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/mounting-attaching-products' target='_blank''&gt;Mounting and Attaching Products&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/flue-duct-expansion-joints-95922027-1.html' target='_blank''&gt;Flue Duct Expansion Joints&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Wed, 27 Feb 2008 07:42:15 -0400</pubDate>\n        </item>\n        <item>\n            <title>Gaskets suit critical service applications.</title>\n            <link>http://news.thomasnet.com/fullstory/Gaskets-suit-critical-service-applications-536053</link>\n            <description>\nRated Best in Class for sealability, load retention, adhesion, and fire safety, Extreme Grade Gaskets are designed to maximize safety and environmental compliance. Anti-stick coating prevents gasket from sticking to flanges, minimizing flange damage and downtime. Able to withstand temperatures ranging from -40 to +650&amp;#176;F, gaskets are suited for water, steam, aliphatic hydrocarbons, oils, and gasolines. \n&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/mounting-attaching-products' target='_blank''&gt;Mounting and Attaching Products&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/handhole-gaskets-33201401-1.html' target='_blank''&gt;Handhole Gaskets&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/pump-gaskets-33310806-1.html' target='_blank''&gt;Pump Gaskets&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Thu, 15 Nov 2007 07:49:14 -0400</pubDate>\n        </item>\n        <item>\n            <title>Gasketing Material minimizes VOC emissions.</title>\n            <link>http://news.thomasnet.com/fullstory/Gasketing-Material-minimizes-VOC-emissions-536052</link>\n            <description>\nSuited for severe chemical service applications, Style 3575 Sage GYLON&amp;#174; Material provides optimized load retention and sealability, as well as minimized permeability, helping plants reduce emissions from hazardous solvents and chemicals. Able to withstand temperatures from -450 to +500&amp;#176;F, material is suited for applications ranging from standard raised face flange assemblies operating at constant temperature to process equipment subject to heavy thermal cycling.\n&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/mounting-attaching-products' target='_blank''&gt;Mounting and Attaching Products&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/chemical-resistant-gaskets-33081209-1.html' target='_blank''&gt;Chemical Resistant Gaskets&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/flange-gaskets-33180605-1.html' target='_blank''&gt;Flange Gaskets&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/gasketing-32900300-1.html' target='_blank''&gt;Gasketing&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Thu, 15 Nov 2007 07:49:14 -0400</pubDate>\n        </item>\n        <item>\n            <title>\nGarlock Sealing Technologies Launches New Gasket Line at Chem Show \n </title>\n            <link>http://news.thomasnet.com/companystory/Garlock-Sealing-Technologies-Launches-New-Gasket-Line-at-Chem-Show-529745</link>\n            <description>\n Garlock Sealing Technologies, a leader in fluid sealing technology for more than 100 years, will premiere a family of new and improved gaskets for critical service in Stand 844 at Chem Show 2007 in New York City from October 30-November 1, 2007. The company will also showcase its HYDRA-JUST(TM) Sealing System and MULTI-SWELL(TM) gasket technologies for the chemical process industry.\n\nAs the world's first self-loading general service gasket, the MULTI-SWELL(TM) gasket virtually eliminates the ...&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/mounting-attaching-products' target='_blank''&gt;Mounting and Attaching Products&lt;/a&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/packaging-products-equipment' target='_blank''&gt;Packaging Products &amp; Equipment&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/chemical-resistant-gaskets-33081209-1.html' target='_blank''&gt;Chemical Resistant Gaskets&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/sealing-systems-96149976-1.html' target='_blank''&gt;Sealing Systems&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Wed, 05 Sep 2007 07:52:37 -0400</pubDate>\n        </item>\n        <item>\n            <title>Gasket creates its own load for optimal reliability.</title>\n            <link>http://news.thomasnet.com/fullstory/Gasket-creates-its-own-load-for-optimal-reliability-524319</link>\n            <description>\nSelf-loading general service gasketing material, Multi-Swell(TM), creates its own load when it comes into contact with oil or water. Suited for MRO applications, product seals flanges in less than perfect conditions and minimizes maintenance. Environmentally friendly gasket performs equally in oil or water, does not degrade in contact with oils, and adapts to all types of flange designs. It also serves to prevent leakage and weeping during load loss.\n&lt;br&gt;&lt;br&gt;&lt;b&gt;This story is related to the following:&lt;/b&gt;&lt;br&gt;&lt;a href='http://news.thomasnet.com/news/mounting-attaching-products' target='_blank''&gt;Mounting and Attaching Products&lt;/a&gt;&lt;br&gt;&lt;br&gt;Search for suppliers of: &lt;a href='http://www.thomasnet.com/products/gasket-material-32871204-1.html' target='_blank''&gt;Gasket Material&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/gaskets-32900409-1.html' target='_blank''&gt;Gaskets&lt;/a&gt;  |  &lt;a href='http://www.thomasnet.com/products/selfsealing-gaskets-33390204-1.html' target='_blank''&gt;Self-Sealing Gaskets&lt;/a&gt;&lt;br&gt;</description>\n            <author>info@productnews.com (ThomasNet News)</author>\n            <pubDate>Tue, 17 Jul 2007 07:48:53 -0400</pubDate>\n        </item>\n    </channel>\n</rss>\n", message:undefined, modified:(new Date(1283743269723)), baseUri:"http://p3k.org/rss/", query:"textColor=#000000&align=&width=500&fontFace=&url=http://news.thomasnet.com/conewsxml/378233&compact=&frameColor=black&showXmlButton=&setup=true&boxFillColor=white&_=1266200355763&titleBarColor=orange&maxItems=7&titleBarTextColor=black&", param:{textColor:"#000000", width:"500", align:"", fontFace:"", url:"http://news.thomasnet.com/conewsxml/378233", frameColor:"black", compact:"", showXmlButton:"", setup:"true", boxFillColor:"white", _:"1266200355763", titleBarColor:"orange", maxItems:"7", titleBarTextColor:"black"}, box:"<table class=\"rssBox\" width=\"${width}\" bgcolor=\"${frameColor}\" \n      style=\"table-layout: fixed; overflow: hidden; font-family: ${fontFace};\" \n      align=\"${align}\" cellspacing=\"1\" cellpadding=\"7\" border=\"0\">\n<tr bgcolor=\"${titleBarColor}\">\n<td>\n   ${xmlButton}\n   <strong>${title}</strong>\n   <div>\n      <small style=\"color: ${titleBarTextColor};\">${date}</small>\n   </div>\n</td>\n</tr>\n<tr bgcolor=\"${boxFillColor}\">\n<td class=\"rssBoxContent\" style=\"color: ${textColor};\">\n   ${image}\n   ${items}\n   ${input}\n   <div class=\"rssBoxPromo\" style=\"margin-top: 0px; text-align: left; \n         font: 9px verdana, sans-serif\">\n      RSS box by <a href=\"http://p3k.org/rss\">p3k.org</a>.\n   </div>\n</td>\n</tr>\n</table>\n\n", image:"<a href=\"${link}\"><img src=\"${source}\" width=\"${width}\" height=\"${height}\" \nalt=\"${title}\" title=\"${title}\" align=\"${align}\" valign=\"${valign}\" \nhspace=\"${hspace}\" vspace=\"${vspace}\" border=\"0\" /></a>\n\n", input:"<form method=\"get\" action=\"${link}\">\n${description}\n<input type=\"text\" name=\"${name}\" size=\"15\" /> <input type=\"submit\" \nvalue=\"${title}\" />\n</form>\n\n", item:"<div class=\"rssBoxItemContent\">\n${title}\n${break}\n${description}\n${buttons}\n</div><br />\n\n", date:"${year}-${month}-${day}, ${hours}:${minutes}h\n\n", link:"<a class=\"${class}\" href=\"${link}\" style=\"${style}\">${text}</a>\n", error:"<?xml version=\"1.0\"?>\n<rss version=\"error\">\n   <channel>\n      <title>RSS Box Error</title>\n      <link>${link}</link>\n      <description>This output was automatically generated to report an error \n      that occurred during a request to the JavaScript RSS Box Viewer.</description>\n      <item>\n         <title>Oops, something went wrong...</title>\n         <description>An error occurred while processing the request to the \n         JavaScript RSS Box Viewer.</description>\n      </item>\n      <item>\n         <title>An error message was returned by the server.</title>\n         <description>${message}</description>\n      </item>\n      <item>\n         <description>Most likely, this might have happened because of a \n         non-existent or invalid RSS feed URL. Please check and possibly correct \n         your input, then try again.</description>\n      </item>\n   </channel>\n</rss>\n\n"})};
function debug(str) {
   return document.write('<p><span style="background-color: yellow;">', 
         str, '</span><p>');
}

org.p3k.RssBox = function() {
   var ref;
   var ISOPATTERN = /([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9:]+).*$/;
   
   var data = org.p3k;
   data.defaults = {
      url: "http://blog.p3k.org/rss",
      maxItems: 7,
      width: 200,
      align: "",
      frameColor: "black",
      titleBarColor: "lightblue",
      titleBarTextColor: "black",
      boxFillColor: "white",
      textColor: "black",
      showXmlButton: "",
      compact: ""
   };
   
   var baseUri = data.baseUri;
    
   var getColor = function(str) {
      if (str.length === 6 && parseInt(str, 16) && str.indexOf("#") !== 0) {
         str = "#" + str;
      }
      return str.toLowerCase();
   }

   var value;
   for (var i in data.defaults) {
      value = data.param[i];
      if (!value || value.length === 0) {
         data.param[i] = data.defaults[i];
      } else if (i.indexOf("Color") > 0) {
         data.param[i] = getColor(value);
      }
   }

   // FIXME: Ugly work-around for many boxes using too small width 
   // values because the former version did not show the exact output.
   if (data.param.javascript && data.param.width < 200) {
      data.param.width = 200;
   }
   // Remove obsolete parameters from param and query
   delete data.param.javascript;
   data.query = data.query.replace("javascript=true", "");   

   var NAMESPACES = {
      dc: "http://purl.org/dc/elements/1.1/",
      rdf: "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   };

   var getUrl = function(url) {
      url = baseUri + "proxy.r?" + encodeURIComponent(url);
   
      var HttpRequest = function() {
         return (typeof XMLHttpRequest !== "undefined") ?
            new XMLHttpRequest() : new ActiveXObject("Msxml2.XMLHTTP");
      }
   
      var request = new HttpRequest();
      request.open("GET", url, false);
      request.send(null);   
      if (!request.getResponseHeader("Date")) {
         var cached = request;
         var ifModifiedSince = cached.getResponseHeader("Last-Modified") || 
               new Date(0); // January 1, 1970
         request = new HttpRequest();
         request.open("GET", url, false);
         request.setRequestHeader("If-Modified-Since", ifModifiedSince);
         request.send("");
         if (request.status === 304) {
            request = cached; 
         }
      }
      return request;
   }
   
   var getDocument = function(source) {
      if (source) {
         if (document.implementation.createDocument) {
            var parser = new DOMParser();
            var doc = parser.parseFromString(source, "text/xml");
            return doc;
         } else if (window.ActiveXObject) {
            var doc = new ActiveXObject("Microsoft.XMLDOM");
            doc.async = "false";
            doc.loadXML(source);
            return doc;
         }
      }
      return null;
   }
   
   var getError = function() {
      var msg = null, root;
      if (!xml || data.message) {
         msg = data.message || "Unknown error.";
      } else if (xml.parseError && xml.parseError.errorCode) {
         msg = xml.parseError.reason; // IExplore
      } else if (root = xml.documentElement) {
         var errorNode;
         if (root.nodeName === "parsererror") {
            msg = xml.documentElement.textContent; // Mozilla
         } else if ((errorNode = root.childNodes[0]) && 
               errorNode.nodeName === "parsererror") {
            msg = errorNode.textContent; // Safari
         } else if (!/rss|rdf|scriptingNews/i.test(xml.documentElement.nodeName)) {
            msg = "Incompatible data format. Are you sure this is an RSS feed?";
         }
      }
      return msg;
   }
   
   var getNode = function(parent, name, namespace) {
      if (namespace) {
         if (typeof parent.getElementsByTagNameNS === "undefined") {
            var elements = parent.getElementsByTagName(namespace + ":" + name);
         } else {
            var elements = parent.getElementsByTagNameNS(NAMESPACES[namespace], name);
         }
      } else {
         var elements = parent.getElementsByTagName(name);
      }
      if (elements && elements[0]) {
         return elements[0];
      }
      return null;
   }
   
   var getText = function(node) {
      if (node && node.childNodes && node.childNodes.length > 0) {
         return node.childNodes[0].nodeValue || "";
      }
      return "";
   }
   
   var trim = function(str) {
      if (str) {
         return str.replace(/^\s*(\S*)\s*$/, "$1");
      }
      return "";
   }
   
   var padZero = function(n) {
      if (n < 10) {
         return "0" + n
      }
      return n;
   }

   var encodeXml = function(str) {
      if (!str) {
         return "";
      }
      return str.replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/&/g, "&amp;");
   }
      
   var render = function(template, param) {
      if (!template || !param) {
         return template;
      }
      template = template.replace(/\$\{([^}]+)\}/g, function() {
         var key = arguments[1];
         return param[key] || "";
      });
      return template;
   }
   
   var renderDate = function(date) {
      if (date.constructor !== Date) {
         var str = String(date);
         var millis = Date.parse(str.replace(ISOPATTERN, "$1/$2/$3 $4"));
         if (millis) {
            date = new Date(millis);
         } else {
            date = new Date;
         }
      }

      return render(data.date, {
         year: date.getFullYear(),
         month: padZero(date.getMonth() + 1),
         day: padZero(date.getDate()),
         hours: padZero(date.getHours()),
         minutes: padZero(date.getMinutes()),
         seconds: padZero(date.getSeconds()),
         timeZone: "" // date.getTimezoneOffset()
      });
   }
   
   var renderButtons = function(enclosure, source) {
      var result = "";
      if (enclosure && enclosure.link) {
         result += render(data.image, {
            source: baseUri + "enclosure.gif",
            title: enclosure.type,
            link: encodeURI(enclosure.link),
            width: 13,
            height: 16
         });
      }
      if (source && source.link) {
         result += render(data.image, {
            source: baseUri + "source.gif",
            title: source.title,
            link: encodeURI(source.link),
            width: 15,
            height: 15
         });
      }
      return result;         
   }
   
   var param = data.param;
   var rss = data.rss = {items: []};
   var xml = getDocument(data.xml);

   rss.error = getError();
   if (rss.error !== null) {
      xml = getDocument(render(data.error, {
         link: baseUri + "?" + encodeXml(data.query),
         message: encodeXml(rss.error)
      }));
      param.compact = 0;
      param.showXmlButton = 1;
   }

   var root = xml.documentElement;
   var type = root.nodeName;

   if (type === "scriptingNews") {
      var channel = getNode(xml, "header");
      rss.format = "Scripting News";
      rss.version = getText(getNode(channel, "scriptingNewsVersion"));
      rss.title = getText(getNode(channel, "channelTitle"));
      rss.description = getText(getNode(channel, "channelDescription"));
      rss.link = getText(getNode(channel, "channelLink"));
      if (ref = getText(getNode(channel, "imageUrl"))) {
         ref = rss.image = {source: ref};
         ref.title = getText(getNode(channel, "imageTitle"));
         ref.link = getText(getNode(channel, "imageLink"));
         ref.width = getText(getNode(channel, "imageWidth"));
         ref.height = getText(getNode(channel, "imageHeight"));
         ref.description = getText(getNode(channel, "imageCaption"));
      }
   } else {
      var channel = getNode(xml, "channel");
      rss.format = "RSS";
      rss.version = (type === "rdf:RDF") ? "1.0" : 
            root.getAttribute("version");
      rss.title = getText(getNode(channel, "title"));
      rss.description = getText(getNode(channel, "description"));
      rss.link = getText(getNode(channel, "link"));
      var image = getNode(xml, "image");
      if (image) {
         ref = rss.image = {};
         ref.source = getText(getNode(image, "url"));
         ref.title = getText(getNode(image, "title"));
         ref.link = getText(getNode(image, "link"));
         ref.width = getText(getNode(image, "width"));
         ref.height = getText(getNode(image, "height"));
         ref.description = getText(getNode(image, "description"));
      }
   }
   
   if (type === "rdf:RDF") {
      rss.date = renderDate(getText(getNode(channel, "date", "dc")) || data.modified);
      rss.rights = getText(getNode(channel, "creator", "dc"));
      var input = getNode(root, "textinput");
      if (input && !getNode(input, "link")) {
         input = root.getElementsByTagName("textinput")[1];
      }
      if (input) {
         ref = rss.input = {};
         ref.link = getText(getNode(input, "link"));
         ref.description = getText(getNode(input, "description"));
         ref.name = getText(getNode(input, "name"));
         ref.title = getText(getNode(input, "title"));
      }
   } else {
      rss.date = renderDate(getText(getNode(channel, "lastBuildDate") || getText(getNode(channel, "pubDate"))) || data.modified);
      rss.rights = getText(getNode(channel, "copyright"));
   }
   
   var item, text, node;
   var items = xml.getElementsByTagName("item");

   for (var i=0; i<Math.min(items.length, param.maxItems); i+=1) {
      item = items[i];

      if (type === "scriptingNews") {
         ref = {title: ""};
         ref.description = getText(getNode(item, "text")).replace(/\n/g, " ");
         ref.link = getText(getNode(item, "link"));
         if (text = trim(getText(getNode(item, "linetext")).replace(/\n/g, " "))) {
            ref.description = ref.description.replace(new RegExp(text), 
                  '<a href="' + getText(getNode(item, "url")) + '">' + text + '</a>');
         }
      } else {
         ref = {
            title: getText(getNode(item, "title")),
            description: getText(getNode(item, "description")),
            link: getText(getNode(item, "link") || getNode(item, "guid"))
         };
     }

     if (node = getNode(item, "source")) {
        ref.source = {
           link: node.getAttribute("url"),
           title: getText(node)
        }
     }
     
     if (node = getNode(item, "enclosure")) {
        ref.enclosure = {
           link: node.getAttribute("url"),
           length: node.getAttribute("length"),
           type: node.getAttribute("type")
        }
     }
     
     if (node = getNode(item, "category")) {
        ref.category = {
           domain: node.getAttribute("domain") || "",
           content: getText(node)
        }
     }
     
     rss.items.push(ref);
   }
   
   var item, items = "";
   for (var i=0; i<rss.items.length; i+=1) {
      item = rss.items[i];
      items += render(data.item, {
         title: new function() {
            var title = (!param.compact ? "<strong>" : "");
            if (item.link) {
               title += render(data.link, {
                  link: encodeURI(item.link),
                  text: item.title,
                  'class': "rssBoxItemTitle"
               });
            } else {
               title += item.title;
            }
            !param.compact && (title += "</strong>");
            return new String(title); // FIXME: Funny, title alone will be rendered as [object]
         }(),
         'break': item.title && item.description ? "<br />" : "",
         description: (!param.compact || !item.title) && item.description,
         buttons: renderButtons(item.enclosure, item.source)
      });
   }
   
   var box = render(data.box, {
      title: rss.link ? render(data.link, {
         link: encodeURI(rss.link),
         text: rss.title,
         'class': "rssBoxTitle",
         style: "color: " + param.titleBarTextColor
      }) : rss.title,
      description: rss.description,
      items: items,

      xmlButton: param.showXmlButton && render(data.image, {
         link: param.url,
         source: baseUri + "rss.png",
         title: rss.format + " " + rss.version,
         width: 16,
         height: 16,
         align: "right",
         hspace: 3
      }),
      
      image: !param.compact && rss.image && render(data.image, {
         link: encodeURI(rss.image.link),
         source: rss.image.source,
         width: rss.image.width,
         height: rss.image.height,
         title: rss.image.title,
         align: "right",
         valign: "baseline",
         hspace: 5,
         vspace: 5
      }),
      
      input: !param.compact && rss.input && render(data.input, {
         link: encodeURI(rss.input.link),
         description: rss.input.description,
         name: rss.input.name,
         title: rss.input.title
      }),
      
      date: rss.date,
      width: param.width,
      frameColor: param.frameColor,
      fontFace: param.fontFace,
      align: param.align,
      titleBarColor: param.titleBarColor,
      titleBarTextColor: param.titleBarTextColor,
      boxFillColor: param.boxFillColor,
      textColor: param.textColor
   });

   if (!window.rssBoxSetup) {
      document.write(box);
   }
   
   return box;
};

org.p3k.RssBox();

