function getRecArray() { var recArray=new Array(); recArray[0]= new recItem(20318526,20701354,'Gowns with Black Details','http://img2.timeinc.net/instyle/images/2010/dd/bridal/VeraWang/fall10-vera-wang-12c.jpg','runway report trends'); recArray[1]= new recItem(20318539,20700471,'Bowed Over','http://img2.timeinc.net/instyle/images/2010/dd/bridal/Amsale/fall10-amsale-22c.jpg','runway report trends'); recArray[2]= new recItem(20318573,20701453,'Cowl Necklines','http://img2.timeinc.net/instyle/images/2010/dd/bridal/Christos/fall10-christos-08c.jpg','runway report trends'); recArray[3]= new recItem(20318582,20701463,'Masters of Illusion','http://img2.timeinc.net/instyle/images/2009/weddings/110409-illusion-pettibone-75.jpg','runway report trends'); recArray[4]= new recItem(20318621,20700490,'In Full Bloom','http://img2.timeinc.net/instyle/images/2009/weddings/110409-floral-angelo-75.jpg','runway report trends'); recArray[5]= new recItem(20318459,20700456,'Top 25 Gowns','http://img2.timeinc.net/instyle/images/2010/dd/bridal/ReemAcra/fall10-reem-acra-21c.jpg','runway report trends'); recArray[6]= new recItem(20316059,20696986,'Gowns Inspired by Ivanka Trump','http://img2.timeinc.net/instyle/images/2009/weddings/102609-ivanka-trump2-75.jpg','Ivanka Trump'); recArray[7]= new recItem(20305882,20674133,'White Gowns on the Red Carpet','http://img2.timeinc.net/instyle/images/2009/GALLERY/092009-Leighton-Meester-75.jpg','leighton meester @ emmys'); recArray[8]= new recItem(20303848,20668120,'From the Runway to Your Wedding Day','http://img2.timeinc.net/instyle/images/2009/dd/2010/CarolinaHerrea/ss10-carolina-herrea-12c.jpg','carolina herrera gown'); recArray[9]= new recItem(20297477,20657005,'Wedding Gowns with a Hint of Color','http://img2.timeinc.net/instyle/images/2009/dd/VeraWangBridal/vera-wang-b_04c.jpg','vera wang gown'); recArray[10]= new recItem(20281649,20628957,'Gowns for Every Budget','http://img2.timeinc.net/instyle/images/2009/weddings/040909_rivini283_75x75.jpg','Spring Runway - Top 25'); recArray[11]= new recItem(20281818,20626970,'Garden-Inspired Gowns','http://img2.timeinc.net/instyle/images/2009/weddings/053009_gowns2_75x75.jpg','Gowns'); return recArray; } function recItem (id,lastSlideID,title,image_src,alt) { this.id = id; this.lastSlideID = lastSlideID; this.title = title; this.image_src = image_src; this.alt = alt; this.getLink = function() { var str = '/weddings/gallery/0,,' + this.id + ',00.html' return str; } this.getLastSlideLink = function() { var str = '/weddings/gallery/0,,' + this.id + '_' + this.lastSlideID + ',00.html' return str; } this.renderDisplay = function(classtxt) { var disp = ''; if (classtxt.indexOf('current') == -1) { disp = '

' + this.title + '

' } else { disp = '

' + this.title + '

' } return disp } } function recComponent () { var _arr = new Array(); var _currentID = '-1'; var _nextObj = ""; var _prevObj = ""; var _filteredArray = new Array(); var iswStaticPath = "http://img2.timeinc.net/weddings/static/2008"; this.setOverride = function(oarr) { _arr = oarr; } this.setCurrentID = function(cid) { _currentID = cid; } this.initialize = function () { try { // remove duplicates from array var tmpArray = _arr.concat(getRecArray()); var usedIDs = ""; var counter = 0; for (i=0; i < tmpArray.length; i++) { var itemObj = tmpArray[i]; var id = itemObj.id; if (usedIDs.indexOf('-'+id+'-') == -1) { _filteredArray[counter] = itemObj; counter++; } usedIDs = usedIDs + id + '-'; } if (typeof(_filteredArray[0]) != 'undefined') { _nextObj = _filteredArray[0]; _prevObj = _filteredArray[_filteredArray.length -1]; } for (i=0; i < _filteredArray.length; i++) { var itemObj = _filteredArray[i]; var id = itemObj.id; if (id == _currentID) { if (i > 0) { _prevObj = _filteredArray[i-1]; } if (i < _filteredArray.length -1) { _nextObj = _filteredArray[i+1]; } break; } } } catch (err) { alert('Problem with initializing more gallery: ' + err.description); } } this.drawPreviousLink = function () { try { if (_prevObj != "") { var str = 'Previous Photo'; document.write(str); } } catch(err) { alert('Problem with drawPreviousLink: ' + err.description); } } this.drawNextLinkTitle = function () { try { if (_nextObj != "") { var str = ''; document.write(str); } } catch(err) { alert('Problem with drawNextLinkTitle: ' + err.description); } } this.drawNextLink = function () { try { if (_nextObj != "") { var str = 'Next Gallery ' document.write(str); } } catch(err) { alert('Problem with drawNextLink: ' + err.description); } } this.renderDisplay = function() { var max = 12; var display = ''; var tmpdisplay = ''; try { for (i=0; i < _filteredArray.length; i++) { var itemObj = _filteredArray[i]; var id = itemObj.id; var counter = i + 1; var txt = ''; if (_currentID == id) { txt = 'current '; } if (counter % 6 == 0) { txt = txt + 'last'; } if (txt != "") { txt = ' class="' + txt.replace(/^s*/, "").replace(/s*$/, "") + '"'; } tmpdisplay = tmpdisplay + itemObj.renderDisplay(txt); if (counter % 6 == 0 || max == counter || counter == _filteredArray.length) { display = display + '' tmpdisplay = ""; } if (max == counter) { break; } } } catch(err) { alert('Problem with rendering more gallery: ' + err.description); } return display } this.draw = function () { document.write(this.renderDisplay()); } }