CINXE.COM

Using Mandrill's SMTP integration with Web Frameworks : Mandrill Support

<!DOCTYPE html> <html lang="en"> <head><script type="text/javascript" src="/_static/js/bundle-playback.js?v=HxkREWBo" charset="utf-8"></script> <script type="text/javascript" src="/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("https://web.archive.org/web"); __wm.wombat("http://help.mandrill.com:80/entries/21738467-Using-Mandrill-s-SMTP-integration-with-Web-Frameworks","20130413021011","https://web.archive.org/","web","/_static/", "1365819011"); </script> <link rel="stylesheet" type="text/css" href="/_static/css/banner-styles.css?v=S1zqJCYt" /> <link rel="stylesheet" type="text/css" href="/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title> Using Mandrill&#39;s SMTP integration with Web Frameworks : Mandrill Support </title> <link rel="shortcut icon" href="/web/20130413021011im_/http://help.mandrill.com/system/logos/2029/9098/mandrill-favicon.ico" type="image/vnd.microsoft.icon"/> <meta name="csrf-param" content="authenticity_token"/> <meta name="csrf-token" content="OzMptunwJaQZZYfNevAJjjuZwVqgIsebyU51L4Jry4I="/> <!--[if lt IE 9]> <script src="http://assets.zendesk.com/assets/vendor/html5_shiv-f98f1e25d740be0c538152bdad4e7903.js" type="text/javascript"></script> <script src="http://assets.zendesk.com/assets/vendor/excanvas-77c7e31b8c91b0479ba1e8e051761b42.js" type="text/javascript"></script> <![endif]--> <link href="https://web.archive.org/web/20130413021011cs_/http://assets.zendesk.com/assets/application/global-dfbb6bba9ba090dd154fb52c14157196.css" media="all" rel="stylesheet" type="text/css"/> <link href="https://web.archive.org/web/20130413021011cs_/http://assets.zendesk.com/assets/application/end_user-ff39ee4116859550e19e8ba4c707da9c.css" media="all" rel="stylesheet" type="text/css"/> <link href="https://web.archive.org/web/20130413021011cs_/http://assets.zendesk.com/assets/application/agent-80df1584db1399ad322afdffeb902fc6.css" media="all" rel="stylesheet" type="text/css"/> <link href="https://web.archive.org/web/20130413021011cs_/http://assets.zendesk.com/assets/application/admin-0f52ff0850fb7a9be0143386941cb7ff.css" media="all" rel="stylesheet" type="text/css"/> <link href="https://web.archive.org/web/20130413021011cs_/http://assets.zendesk.com/assets/application/monitor-4c8565422b72c410c0639780726c31b5.css" media="all" rel="stylesheet" type="text/css"/> <link href="https://web.archive.org/web/20130413021011cs_/http://assets.zendesk.com/assets/print-2553fce480c2b704616e21dde9657659.css" media="print" rel="stylesheet" type="text/css"/> <!--[if lte IE 8]><link href="http://assets.zendesk.com/assets/ie-68e34edc1a1ede9140775baa0d579d2c.css" media="screen" rel="stylesheet" type="text/css" /><![endif]--> <!--[if lte IE 6]><link href="http://assets.zendesk.com/assets/ie6-a9d5ec36d2464e09a04beba4376987d3.css" media="screen" rel="stylesheet" type="text/css" /><![endif]--> <link id="generated_styles" rel="stylesheet" type="text/css" href="/web/20130413021011cs_/http://help.mandrill.com/generated/stylesheets/branding/1483/148379/1363954770.css" media="screen"/> <script src="https://web.archive.org/web/20130413021011js_/http://assets.zendesk.com/assets/vendor/jquery-1.6.1-86096357efa9dc21044b775b3f361e15.js" type="text/javascript"></script> <script id="generated_javascript" type="text/javascript" src="/web/20130413021011js_/http://help.mandrill.com/generated/javascripts/locale/0/1/1365726891-1-1365726891.js"></script> <script src="https://web.archive.org/web/20130413021011js_/http://assets.zendesk.com/assets/bootstrap-eb42882586529e18396cde1c47da688d.js" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ Zendesk.assetHost = 'https://web.archive.org/web/20130413021011/http://assets.zendesk.com'; Zendesk.ToTangoID = 'SP-1111-01'; Zendesk.viewedOnMobileDevice = false; currentUser = Zendesk.currentUser = new User({"id":null,"externalId":null,"name":"Anonymous user","first_name":"Anonymous","role":0,"accessibleForums":true,"hasEmail":true,"email":"invalid@example.com","restriction":0,"uses12HourClock":true,"passwordExpiresAt":null,"availableForVoice":false,"availableForVoiceOn":"off","voiceClientName":"agent_","voicePresenceName":"agent__presence","version":"users/new","localeVersion":"1.1365726891","showCookieLink":true,"tags":[],"managePinnedOrder":false,"locale_id":1,"localeIsDifferent":false,"assumed":false}); currentUser.account = currentAccount = Zendesk.currentAccount = new Account({"id":148379,"name":"Mandrill Support","showUserProfile":false,"showChangePassword":false,"hasRemoteAuthentication":false,"subdomain":"mandrill","domain":"zendesk.com","isZendesk":false,"isSandbox":false,"isOpen":true,"isInTrial":false,"isPayingCustomer":true,"forumsTitle":"Knowledge Base","urlPrefix":"https://web.archive.org/web/20130413021011/http://help.mandrill.com","secureUrlPrefix":"https://web.archive.org/web/20130413021011/https://mandrill.zendesk.com","lastTrialDay":null,"daysLeftInTrial":null,"showExtendedTicketMetrics":true,"rulesCanReferenceMacros":false,"hasInvalidationTriggers":false,"features":["collaboration","businessHours","cms","lotus","lotusForAgents","placeholderSuggestions","useStatusHold","untilDueDate"],"twitter_accounts":[{"id":20012851,"screen_name":"@mandrillapp","authorized":true}],"facebookPages":[],"isLotusVisibleToAgents":true,"doAgentsPreferLotus":true,"clientSideLogging":false}); currentUser.organization = null; currentUser.canViewOrganization = currentUser.organization != null && (!currentUser.isEndUser || currentUser.restriction === User.restrictions.organization || currentUser.organization.isShared); //]]> </script> <script src="https://web.archive.org/web/20130413021011js_/http://assets.zendesk.com/assets/node_pubsub_2-317239eea72da74eb23b6181c44134ac.js" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ ;(function(){ var config = {"servers":[{"host":"pubsub1-1.zendesk.com","port":"443"},{"host":"pubsub1-2.zendesk.com","port":"443"},{"host":"pubsub1-3.zendesk.com","port":"443"},{"host":"pubsub1-4.zendesk.com","port":"443"}],"secure":true,"upgrade":false,"userId":"0","userType":"0","accountName":"mandrill","auth":"Uvpd3o5JVOSfpJMg58Q/BgYQKuXy6kWEVqxkDgEHK1gvUOFKxYNKecbLNVLEURwc0W9GP92ZqIytWlY2L1jPLA=="}, random = config.servers[Math.floor(Math.random() * config.servers.length)]; config.host = random.host; config.port = random.port; RadarClient.configure(config); window.Zendesk || (Zendesk = {}); }()); //]]> </script> <script type="text/javascript"> if(Zendesk.currentAccount && Zendesk.currentAccount.features.include('secureSessions')) { jQuery.cookie.defaults.secure = true; } if(Zendesk.currentUser) { Zendesk.currentUser.authenticityToken = $j("meta[name='csrf-token']").attr('content'); } </script> <script type="text/javascript"> // disable Sammy logging in production Sammy.log = function(){}; </script> <script type="text/javascript"> //<![CDATA[ $j(document).ready(function () { }); //]]> </script> <meta name="keywords" content="nodejs rails ruby using mandrill's smtp integration with web frameworks mandrill support"/> <meta name="description" content="Using Mandrill's SMTP integration with Web Frameworks. SMTP Integration"/> <meta name="author" content="Kaitlin"/> <meta property="og:locale" content="en_US"/> <meta property="og:title" content="Using Mandrill's SMTP integration with Web Frameworks"/> <meta property="og:type" content="article"/> <meta property="og:url" content="https://web.archive.org/web/20130413021011/http://help.mandrill.com/entries/21738467-Using-Mandrill-s-SMTP-integration-with-Web-Frameworks"/> <meta property="og:image" content="https://web.archive.org/web/20130413021011im_/http://help.mandrill.com/system/logos/2028/5501/header_logo-2fb73086.png"/> <meta property="og:site_name" content="Mandrill Support"/> <meta property="og:description" content="If you're using Ruby on Rails or NodeJS, you can configure sending through your Mandrill account via SMTP. Port 25 is used in these examples, but..."/> <link rel="canonical" href="https://web.archive.org/web/20130413021011/http://help.mandrill.com/entries/21738467-Using-Mandrill-s-SMTP-integration-with-Web-Frameworks"/> <style type="text/css"> </style> <script src="https://web.archive.org/web/20130413021011js_/http://use.typekit.com/naw0mzv.js" type="text/javascript"></script> <script type="text/javascript"> try{Typekit.load();}catch(e){} </script> <style> body { padding: 0; } */ Adjust link colors for mobile site */ a.ilist { color: #fff; font-size: 25px; } /* Set the page properties so the header bar goes full width */ #page { background: #f1f1f2; padding: 0; width: 100%; max-width: 100%; border-bottom-left-radius: 0; border-bottom-right-radius: 0; -moz-border-radius-bottomleft: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom-left-radius: 0; -webkit-border-bottom-right-radius: 0; } /* Make the content a max-width of 1024px */ div#container { width: 83.3333%; max-width: 1024px; margin: 0 auto; padding: 10px; } /* Add a gradient for the header bar */ #header { height: 36px; background-color: #454546; background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#454546), to(#262527)); background-image: -webkit-linear-gradient(top, #454546, #262527); background-image: -moz-linear-gradient(top, #454546, #262527); background-image: -ms-linear-gradient(top, #454546, #262527); background-image: -o-linear-gradient(top, #454546, #262527); border-bottom: 1px solid rgba(0, 0, 0, 0.25); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25); color: ##D2D2D2; padding-bottom: 0; margin-bottom: 0; } #header_container { margin: 0; padding: 0; } #table_header { font-family: 'freight-sans-pro','Helvetica Neue',Arial,Helvetica,sans-serif; text-transform:uppercase; font-weight:700; font-size:15px; letter-spacing:2px; border-collapse:collapse; } h1, h2 { color: #282729; } div#container .content { background-color: transparent; font-size: 14px; } div.column h3 { font-size: 16px; } .frame h3 { font-size: 16px; } .grey_box_bottom, .grey_box_top, .green_box_bottom, .green_box_top { display:none; } .frame { background-color: transparent; } /* Setting the color for the error/success messages shown in the backend #flash div { color: #fff; } */ #flash div#notice { background-color: #f4f4f4; } /* Setting the #top background color removes the 1 px white line above the menu bar */ #top { background: #454546; } #top-menu-background, #top form#topquery { background: #404041; } #top-menu { float: right; } .header, .header a, #table_header a, #top-right, #top-right a, #top-menu a.tab, #user_chat h1 span, #user_chat #end_session { color: #d2d2d2; } .fade_truncation_inner, .faded_truncation { background-image:url(https://web.archive.org/web/20130413021011im_/https://mandrillapp.com/img/kb/fade_bar.png); } .content li.articles { background-image:url(https://web.archive.org/web/20130413021011im_/https://mandrillapp.com/img/kb/composite.gif); } div.category-header { background-color: transparent; } /* Remove the dividing line between the logo and the help desk name */ #logo-delimiter { display: none; } #top-menu-background, .menu-drop { border-bottom-left-radius: 0; border-bottom-right-radius: 0; -moz-border-radius: 0px; -webkit-border-radius: 0px; border-radius: 0px; -khtml-border-radius: 0px; } #top-menu li.active a.tab { color: #FFF; } #top-menu ul li.active { background: #404041; } ul#green li.active { border-left: none; } #top-menu a.tab { padding: 7px 15px 5px; } a.tab:hover { background: #131313; color: #FFF; } li.main { background: none; } ol.nested li { list-style-type: lower-roman; } ul.nested li { list-style-type: circle; } form#suggest_form input#suggestions_query, .content #query, .content #suggestions_query, .content #q { width: 66.6666%; } body, .content p { font-family: 'Helvetica Neue',Arial,Helvetica,Sans-serif; color: #666666 !important; } .user_formatted { font-size: 1.2em; color: #666666 !important; } .user_formatted ul li { color: #666666 !important; } .entry img { max-width: 100%; border:1px solid #c1c1c1; margin:5px 0; background: #FFFFFF; padding:4px; } .article-notes { background-color:#F4F4F4; border:1px solid #C1C1C1; margin: 10px; padding: 15px; } .button.search, .button_disabled.search, #searchsubmit, form#suggest_form input#suggestion_submit, #submit-button { -moz-transition: background 0.15s linear 0s; background: none repeat scroll 0 0 #9C9C9C; -moz-border-radius: 5px; -webkit-border-radius: 5px; -khtml-border-radius: 5px; /* for old Konqueror browsers */ border-radius: 5px; font-family: 'freight-sans-pro','Helvetica Neue',Arial,Helvetica,sans-serif; text-transform: uppercase; font-weight: 600; height: 35px; width: 150px; border: none; text-shadow: none; font-size: 1em; color: #FFFFFF } .button.search:hover, .button_disabled.search:hover, #searchsubmit:hover, form#suggest_form input#suggestion_submit:hover, #submit-button:hover { background: #BBBBBB; color: #FFFFFF; } .content h4 { font-size: 16px; margin: 12px 0 6px; } .content h5 { font-size: 13px; } a:hover, a:focus, div.column li a:hover, div.column li a:focus, .content a:hover { color: #1A6690; text-decoration: none; } .content a {color:#008CC0;} h3.entry-title{font-size:28px;font-weight:600;} /* Table Styles */ .user_formatted table.table_data {margin:25px;} table.table_data {margin;25px;border:1px solid #ccc; border-collapse:collapse;} table.table_data tr, table.table_data td, table.table_data th {border:1px solid #ccc;} table.table_data th, table.table_data tr.total {padding:1.2em; text-transform:uppercase;font-weight:800;letter-spacing:.2em; font-size:1.1em} table.table_data tr, table.table_data td {padding:1em;} table.table_data tr.shaded {background:#fff;} table.table_data tr.total {background:#008BC0; color:#fff;} table.table_data td.right {text-align:right;} table.table_data th {text-align:center;} </style> <style type="text/css"> /* Remove login information from end-users so they don't have access to view tickets online */ li.main.clazz.tab_requests, li.tab_forums, #top-right, #voting_control, #footer, #comments_section {display: none;} body.entries.entries-show .content.content_green {display:none;} body.access.access-unauthenticated .content.content_green {display:none;} /* Remove article author information */ .entries-show img.entry_user, .entries-show p.entry_user {display: none;} p.info.data {display: none;} </style> </head> <body class="entries entries-show"> <ul id="banners"> <script type="text/html" id="banner-item-template" data-template-name="banner-item"> <li> <span class='icon'>&nbsp; &nbsp; &nbsp; </span> <span class='content'>{{ text }}</span> <span class='ignore'>(<a href="#">ignore this</a>)</span> <span class='reload'>(<a href="">reload</a>)</span> </li> </script> </ul> <div id="page"> <div id="top"> <div id="header"> <div id="top-right"></div> <div id="header_container"> <table id="table_header"><tr> <td><a href="https://web.archive.org/web/20130413021011/http://mandrill.com/" target="_blank" title=""><img alt="" id="logo" src="https://web.archive.org/web/20130413021011im_/http://assets.zendesk.com/system/logos/2028/5501/header_logo-2fb73086.png?1365714521"/></a>&nbsp;</td> <td><img alt="" id="logo-delimiter" src="https://web.archive.org/web/20130413021011im_/http://assets.zendesk.com/images/logo-delimiter.png?1365714521"/>&nbsp;</td> <td><a href="/web/20130413021011/http://help.mandrill.com/home">Mandrill Support</a></td> </tr></table> </div> </div> <div id="top-menu-background"> <div id="top-menu"> <ul id="green" style="width: 100%;"> <li class="main clazz tab_home"><a href="/web/20130413021011/http://help.mandrill.com/home" class="tab">Home</a></li> <li class="main clazz tab_new"><a href="/web/20130413021011/http://help.mandrill.com/anonymous_requests/new" class="tab">Submit a request</a></li> <li class="main clazz tab_requests"><a href="/web/20130413021011/http://help.mandrill.com/requests" class="tab">Check your existing requests</a></li> </ul> </div> </div> </div> <div id="container" class="clearfix"> <div id="flash"> </div> <div id="flash_messages"> <script type="text/javascript"> </script> </div> <div id="contentwrapper"> <div id="contentcolumn"> <script type="text/javascript"> //<![CDATA[ zd.jsInitializers.push(["entries/_forums2_show",[{"is_moderator?":false}]]); //]]> </script> <div class="content content_grey"><div class="grey_box_top"><div class="box box_top"></div></div> <div class="content-top-right top"> <p> </p> </div> <h2 class="forums"><a href="/web/20130413021011/http://help.mandrill.com/forums">Knowledge Base</a><span class="delim">/</span><a href="/web/20130413021011/http://help.mandrill.com/forums/20689696-SMTP-Integration">SMTP Integration</a></h2> <div class="frame"> <div class="entry nobottom" style="padding-bottom:0;"> <h3 class="entry-title" style="padding-bottom: 9px;">Using Mandrill&#39;s SMTP integration with Web Frameworks</h3> <img src="/web/20130413021011im_/http://help.mandrill.com/system/photos/4489/5412/header_logo-2fb73086_thumb.png" class="entry_user"/> <div class="entry-container"> <p class="entry_user"> Kaitlin<br/> posted this on July 19, 2012 12:22 am </p> </div> <div class="user_formatted header_section clearfix"> <p>If you're using Ruby on Rails or NodeJS, you can configure sending through your Mandrill account via SMTP.</p> <div class="article-notes">Port 25 is used in these examples, but you can connect to Mandrill on <a href="https://web.archive.org/web/20130413021011/http://help.mandrill.com/entries/21738477-what-smtp-ports-can-i-use">other ports</a> if needed, so use whichever works for your particular configuration.</div> <h2>Ruby on Rails</h2> <p>Rails comes ready to send email out of the box, you just need to decide what environments will be sending email via Mandrill: “production” is a no-brainer, but “development” may only use Mandrill on occasion to make sure something works, and “test” should probably never use it (test suites shouldn’t rely on external services, etc.)</p> <p>Which file you edit is determined by your environment choices:</p> <ul> <li>production: config/environments/production.rb</li> <li>test: config/environments/test.rb</li> <li>development: config/environments/development.rb</li> <li>all: config/application.rb (not recommended)</li> </ul> <h3>Code</h3> <pre># production.rb, test.rb, development.rb or application.rb YourApp::Application.configure do config.action_mailer.smtp_settings = { :address =&gt; "smtp.mandrillapp.com", :port =&gt; 25, # ports 587 and 2525 are also supported with STARTTLS :enable_starttls_auto =&gt; true, # detects and uses STARTTLS :user_name =&gt; "MANDRILL_USERNAME", :password =&gt; "MANDRILL_PASSWORD", # SMTP password is any valid API key :authentication =&gt; 'login', # Mandrill supports 'plain' or 'login' :domain =&gt; 'yourdomain.com', # your domain to identify your server when connecting } # … end # app/mailers/your_mailer.rb class YourMailer &lt; ActionMailer::Base def email_name mail :subject =&gt; "Mandrill rides the Rails!", :to =&gt; "recipient@example.com", :from =&gt; "you@yourdomain.com" end end # In a controller: YourMailer.email_name.deliver</pre> <h2>NodeJS</h2> <p>For Node we’ll be using the node_mailer library, installed via npm. To install npm:</p> <pre>$ curl http://npmjs.org/install.sh | sh</pre> <p>To install node_mailer:</p> <pre>$ npm install mailer</pre> <h3>Code</h3> <pre>// mailer.js var mailer = require("mailer") , username = "MANDRILL_USERNAME" , password = "MANDRILL_PASSWORD"; mailer.send( { host: "smtp.mandrillapp.com" , port: 25 , to: "customer@anydomain.com" , from: "you@yourdomain.com" , subject: "Mandrill knows Javascript!" , body: "Hello from NodeJS!" , authentication: "login" , username: username , password: password }, function(err, result){ if(err){ console.log(err); } } ); </pre> <p>Now run like this:</p> <pre>$ node mailer.js</pre> </div> <table class="entry_footer header_section for_vote for_share_buttons"> <tbody> <tr> <td> <div class="" id="voting_control"></div> <script type="text/javascript" charset="utf-8"> new Ajax.Updater('voting_control', '/entries/21738467-Using-Mandrill-s-SMTP-integration-with-Web-Frameworks/voting_control', {asynchronous:true, evalScripts:true, method:'get', parameters:'authenticity_token=' + encodeURIComponent('OzMptunwJaQZZYfNevAJjjuZwVqgIsebyU51L4Jry4I=')}) </script> </td> </tr> </tbody> </table> </div> </div> <div class="grey_box_bottom"><div class="box box_bottom"></div></div></div><div class="box_bottom_clear">&nbsp;</div> <div class="forum_tabs"> <div class="content content_green"><div class="green_box_top"><div class="box box_top"></div></div> <div id="comments_section"> <div class="action"><strong>Topic is closed for comments</strong></div> <div id="edit"></div> </div> <div class="green_box_bottom"><div class="box box_bottom"></div></div></div><div class="box_bottom_clear">&nbsp;</div></div> <script type="text/javascript"> //<![CDATA[ zd.jsInitializers.push(["entries/show",[]]); //]]> </script> </div> </div> <div id="sidebar"> </div> </div> </div> <div id="footer"> <p> <a href="https://web.archive.org/web/20130413021011/http://www.zendesk.com/help-desk-software">Support Software</a> by Zendesk </p> </div> <!-- Render any mouseover tips on the page --> <script type="text/javascript"> //<![CDATA[ if(!Zendesk) var Zendesk = {}; Zendesk.tab = ""; //]]> </script> <script src="https://web.archive.org/web/20130413021011js_/http://assets.zendesk.com/assets/auto_included-c1d9faebf28b14b567593d64aed5aa22.js" type="text/javascript"></script> <script src="https://web.archive.org/web/20130413021011js_/http://assets.zendesk.com/assets/zd_tickets_table_node-256ccab3f85894285263ebf2f42dc46a.js" type="text/javascript"></script> <script src="https://web.archive.org/web/20130413021011js_/http://assets.zendesk.com/assets/zd_ticket_viewing_status_node-f7ed672458b822ada17d202c855a39bb.js" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ $z.initializeModules(zd.jsInitializers); //]]> </script> <script type="text/javascript" charset="utf-8"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-329148-26']); _gaq.push(['_setDomainName', 'mandrill.com']); _gaq.push(['_addIgnoreRef', 'mandrill.com']); _gaq.push(['_addIgnoreOrganic', 'mandrill.com']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://web.archive.org/web/20130413021011/https://ssl' : 'https://web.archive.org/web/20130413021011/http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> <script type="text/javascript" charset="utf-8"> $j(document).ready(function () { var cacheBuster = currentUser.isAnonymous ? currentUser.localeVersion : currentUser.version; $j.ajax({ url: '/widgets/async.json?user_id=' + currentUser.id + '&v=' + cacheBuster, data: {"controller_name":"entries","action_name":"show","action_method":"get","entry_id":"21738467"}, success: Widget.asyncInsertion }); }); </script> <script type="text/javascript"> //<![CDATA[ jQuery(document).ready(function () { Zendesk.Alerts.showPasswordExpiration(); }); //]]> </script></body> </html> <!-- FILE ARCHIVED ON 02:10:11 Apr 13, 2013 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 01:08:29 Dec 05, 2024. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 0.524 exclusion.robots: 0.022 exclusion.robots.policy: 0.013 esindex: 0.01 cdx.remote: 21.366 LoadShardBlock: 328.861 (3) PetaboxLoader3.datanode: 218.713 (4) load_resource: 293.007 PetaboxLoader3.resolve: 133.904 -->

Pages: 1 2 3 4 5 6 7 8 9 10