/* * $Id: Menu.java,v 1.6 2004/07/12 11:52:24 aron Exp $ * * Copyright (C) 2001 Idega hf. All Rights Reserved. * * This software is the proprietary information of Idega hf. * Use is subject to license terms. * */ package is.idega.idegaweb.campus.presentation; import java.util.Enumeration; import com.idega.core.localisation.business.LocaleSwitcher; import com.idega.idegaweb.IWBundle; import com.idega.idegaweb.IWResourceBundle; import com.idega.presentation.Block; import com.idega.presentation.IWContext; import com.idega.presentation.Image; import com.idega.presentation.Table; import com.idega.presentation.text.Link; import com.idega.util.LocaleUtil; /** * * @author <a href="mailto:aron@idega.is">aron@idega.is</a> * @version 1.0 */ public class Menu extends Block{ private String iObjectName = "Menu"; private String LightColor,MiddleColor,DarkColor; private int iAct; private String sAct; private String strAction = TabAction.sAction; private boolean isAdmin; private final int ACT1 = 1, ACT2 = 2, ACT3 = 3, ACT4 = 4; private final int ACT5 = 5, ACT6 = 6, ACT7 = 7, ACT8 = 8; private final int NOACT = 0; protected IWResourceBundle iwrb; protected IWBundle iwb; private final static String IW_BUNDLE_IDENTIFIER="is.idega.idegaweb.campus"; private int templateId = -1; public Menu(){ MiddleColor = "#9FA9B3"; LightColor = "#D7DADF"; DarkColor = "#27324B"; } private void control(IWContext iwc){ iwrb = getResourceBundle(iwc); iwb = getBundle(iwc); try{ if(iwc.getParameter(strAction) == null){ if ( iwc.getSessionAttribute(strAction) != null ) { sAct = (String) iwc.getSessionAttribute(strAction); iAct = Integer.parseInt(sAct); } else { iAct = NOACT; } } if(iwc.getParameter(strAction) != null){ sAct = iwc.getParameter(strAction); iAct = Integer.parseInt(sAct); if(iAct == 0) iwc.removeSessionAttribute(strAction); //if ( ((String) iwc.getSessionAttribute(strAction)) != (sAct) ) { iwc.setSessionAttribute(strAction,sAct); //} } doAct(iwc); } catch(Exception S){ S.printStackTrace(); } } public String getBundleIdentifier(){ return IW_BUNDLE_IDENTIFIER; } private void doAct(IWContext iwc){ int MenuCount = 7; Table LinkTable = new Table(); LinkTable.setBorder(0); LinkTable.setCellpadding(0); LinkTable.setCellspacing(0); LinkTable.setWidth("100%"); int iWidth = 130; int iHeight = 18; int row = 1; CampusLinkFactory CF = new CampusLinkFactory(); Image office = (iAct != ACT2?iwrb.getImage("/menu/office.gif","/menu/office_o.gif","Office",iWidth,iHeight):iwrb.getImage("/menu/office1.gif",iWidth,iHeight)); Link lOffice = CampusLinkFactory.getLink(CampusLinkFactory.MENU_OFFICE,office); lOffice.addParameter(TextControl.strAction,"1"); lOffice.addParameter(strAction,ACT2); LinkTable.add(lOffice,1,row); row++; Image apartment = (iAct != ACT4?iwrb.getImage("/menu/apartment.gif","/menu/apartment_o.gif","Appartment",iWidth,iHeight):iwrb.getImage("/menu/apartment1.gif",iWidth,iHeight)); Link lApartment = CampusLinkFactory.getLink(CampusLinkFactory.MENU_APARTMENTS,apartment); lApartment.addParameter(strAction,ACT4); LinkTable.add(lApartment,1,row); row++; Image apply = (iAct != ACT3?iwrb.getImage("/menu/apply.gif","/menu/apply_o.gif","Apply",iWidth,iHeight):iwrb.getImage("/menu/apply1.gif",iWidth,iHeight)); Link lApply = CampusLinkFactory.getLink(CampusLinkFactory.MENU_APPLICATION,apply); lApply.addParameter(strAction,ACT3); LinkTable.add(lApply,1,row); row++; if ( iAct == ACT3 ) { Image instructs = iwrb.getImage("/menu/instructions.gif",iWidth,iHeight); Link lInstr = CampusLinkFactory.getLink(CampusLinkFactory.MENU_INSTRUCT,instructs); lInstr.addParameter(TextControl.strAction,"4"); LinkTable.add(lInstr,1,row); row++; Image rules = iwrb.getImage("/menu/rules.gif",iWidth,iHeight); Link lRules = CampusLinkFactory.getLink(CampusLinkFactory.MENU_RULES,rules); lRules.addParameter(TextControl.strAction,"3"); LinkTable.add(lRules,1,row); row++; } Image info = (iAct != ACT1?iwrb.getImage("/menu/info.gif","/menu/info_o.gif","Info",iWidth,iHeight):iwrb.getImage("/menu/info1.gif",iWidth,iHeight)); Link lInfo = CampusLinkFactory.getLink(CampusLinkFactory.MENU_INFO,info); lInfo.addParameter(strAction,ACT1); LinkTable.add(lInfo,1,row); row++; Image links = (iAct != ACT5?iwrb.getImage("/menu/links.gif","/menu/links_o.gif","Links",iWidth,iHeight):iwrb.getImage("/menu/links1.gif",iWidth,iHeight)); Link lLinks = CampusLinkFactory.getLink(CampusLinkFactory.MENU_LINKS,links); lLinks.addParameter(strAction,ACT5); lLinks.addParameter(TextControl.strAction,"14"); LinkTable.add(lLinks,1,row); row++; Image home = iwrb.getImage("/menu/home.gif","/menu/home_o.gif","Home",iWidth,iHeight); Link lHome = new Link(home,"/index.jsp"); lHome.addParameter(strAction,NOACT); LinkTable.add(lHome,1,row); row++; LinkTable.add(iwb.getImage("redtab.gif","",iWidth,iHeight),1,row); row++; Image language = iwrb.getImage("/menu/language.gif",iwrb.getLocalizedString("language","English"),95,37); Link link6 = new Link(language); if(iwc.getCurrentLocale().equals(LocaleUtil.getIcelandicLocale())){ link6.addParameter(LocaleSwitcher.languageParameterString,LocaleSwitcher.englishParameterString); } else{ link6.addParameter(LocaleSwitcher.languageParameterString,LocaleSwitcher.icelandicParameterString); } link6.setEventListener(com.idega.core.localisation.business.LocaleSwitcher.class.getName()); //link6.maintainParameter("text_action",iwc); //link6.maintainParameter("campus_action",iwc); Enumeration e = iwc.getParameterNames(); while(e.hasMoreElements()){ String s = (String)e.nextElement(); link6.addParameter(s,iwc.getParameter(s)); } LinkTable.add(link6,1,row); LinkTable.setHeight(1,row,"51"); LinkTable.setAlignment(1,row,"center"); add( LinkTable); } public int getAct(){ return iAct; } public void setTemplate(com.idega.core.builder.data.ICPage templatePage){ templateId = ((Integer)templatePage.getPrimaryKey()).intValue(); } public String getObjectName(){ return iObjectName; } public void main(IWContext iwc) { isAdmin = iwc.hasEditPermission(this); control(iwc); } }// class Menu