From ab0f71d4c870abc968de0f4e2b4c336b057abe3a Mon Sep 17 00:00:00 2001 From: freskoWin Date: Sat, 29 Sep 2012 01:48:38 -0500 Subject: [PATCH 1/2] First Push First Push cuentaspersonal --- CuentasPersonales/.classpath | 12 + CuentasPersonales/.mymetadata | 13 + CuentasPersonales/.project | 45 + .../.settings/com.genuitec.eclipse.ws.prefs | 3 + .../.settings/org.eclipse.jdt.core.prefs | 7 + .../WebRoot/META-INF/MANIFEST.MF | 3 + .../WEB-INF/classes/META-INF/persistence.xml | 23 + .../WebRoot/WEB-INF/classes/log4j.dtd | 166 +++ .../WebRoot/WEB-INF/classes/log4j.xml | 26 + .../WebRoot/WEB-INF/facelets/footer.jspx | 21 + .../WEB-INF/facelets/footerInitialMenu.jspx | 21 + .../WebRoot/WEB-INF/facelets/header.jspx | 34 + .../WebRoot/WEB-INF/faces-config.xml | 272 +++++ CuentasPersonales/WebRoot/WEB-INF/web.xml | 40 + .../WebRoot/XHTML/CommonColumnsContent.xhtml | 14 + .../WebRoot/XHTML/CommonLayout.xhtml | 21 + CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml | 384 ++++++ .../WebRoot/XHTML/cpDetalleMovimiento.xhtml | 84 ++ .../cpDetalleMovimientoListDataTable.xhtml | 117 ++ ...talleMovimientoListDataTableEditable.xhtml | 215 ++++ .../WebRoot/XHTML/cpGrupoMovimiento.xhtml | 71 ++ .../cpGrupoMovimientoListDataTable.xhtml | 82 ++ ...GrupoMovimientoListDataTableEditable.xhtml | 131 ++ .../WebRoot/XHTML/cpMovimiento.xhtml | 73 ++ .../XHTML/cpMovimientoListDataTable.xhtml | 89 ++ .../cpMovimientoListDataTableEditable.xhtml | 147 +++ .../WebRoot/XHTML/cpTipoMovimiento.xhtml | 69 ++ .../XHTML/cpTipoMovimientoListDataTable.xhtml | 75 ++ ...pTipoMovimientoListDataTableEditable.xhtml | 115 ++ .../WebRoot/XHTML/cpUsuarios.xhtml | 79 ++ .../XHTML/cpUsuariosListDataTable.xhtml | 110 ++ .../cpUsuariosListDataTableEditable.xhtml | 195 +++ .../WebRoot/XHTML/initialMenu.xhtml | 92 ++ CuentasPersonales/WebRoot/css/style.css | 400 +++++++ .../WebRoot/images/ajaxloadingbar.gif | Bin 0 -> 10819 bytes .../WebRoot/images/bg_fptopbox.png | Bin 0 -> 253 bytes CuentasPersonales/WebRoot/images/bg_nav.png | Bin 0 -> 222 bytes .../WebRoot/images/bg_promo1.png | Bin 0 -> 305 bytes .../WebRoot/images/bg_promo2.png | Bin 0 -> 298 bytes .../WebRoot/images/bg_promo3.png | Bin 0 -> 327 bytes CuentasPersonales/WebRoot/images/bullet.png | Bin 0 -> 214 bytes CuentasPersonales/WebRoot/images/crud.png | Bin 0 -> 40894 bytes .../WebRoot/images/dataTable.png | Bin 0 -> 48296 bytes .../WebRoot/images/dataTableEditable.png | Bin 0 -> 42766 bytes CuentasPersonales/WebRoot/images/home.png | Bin 0 -> 35657 bytes CuentasPersonales/WebRoot/images/icon.png | Bin 0 -> 697 bytes CuentasPersonales/WebRoot/images/icon_rss.png | Bin 0 -> 685 bytes CuentasPersonales/WebRoot/images/logo.png | Bin 0 -> 12405 bytes CuentasPersonales/WebRoot/index.jsp | 17 + .../generado/META-INF/persistence.xml | 23 + CuentasPersonales/generado/log4j.dtd | 166 +++ CuentasPersonales/generado/log4j.xml | 26 + .../dao/CpDetalleMovimientoDAO.java | 424 +++++++ .../dataaccess/dao/CpGrupoMovimientoDAO.java | 375 ++++++ .../dataaccess/dao/CpMovimientoDAO.java | 371 ++++++ .../dataaccess/dao/CpTipoMovimientoDAO.java | 375 ++++++ .../cuentas/dataaccess/dao/CpUsuariosDAO.java | 407 +++++++ .../dao/ICpDetalleMovimientoDAO.java | 192 +++ .../dataaccess/dao/ICpGrupoMovimientoDAO.java | 151 +++ .../dataaccess/dao/ICpMovimientoDAO.java | 150 +++ .../dataaccess/dao/ICpTipoMovimientoDAO.java | 151 +++ .../dataaccess/dao/ICpUsuariosDAO.java | 188 +++ .../dataaccess/daoFactory/JPADaoFactory.java | 66 + .../entityManager/EntityManagerHelper.java | 75 ++ .../cuentas/exceptions/ZMessManager.java | 81 ++ .../personales/CpDetalleMovimiento.java | 153 +++ .../cuentas/personales/CpGrupoMovimiento.java | 104 ++ .../cuentas/personales/CpMovimiento.java | 119 ++ .../cuentas/personales/CpTipoMovimiento.java | 89 ++ .../cuentas/personales/CpUsuarios.java | 149 +++ .../control/CpDetalleMovimientoLogic.java | 616 ++++++++++ .../control/CpGrupoMovimientoLogic.java | 462 +++++++ .../personales/control/CpMovimientoLogic.java | 600 ++++++++++ .../control/CpTipoMovimientoLogic.java | 414 +++++++ .../personales/control/CpUsuariosLogic.java | 478 ++++++++ .../control/ICpDetalleMovimientoLogic.java | 53 + .../control/ICpGrupoMovimientoLogic.java | 49 + .../control/ICpMovimientoLogic.java | 54 + .../control/ICpTipoMovimientoLogic.java | 47 + .../personales/control/ICpUsuariosLogic.java | 45 + .../dto/CpDetalleMovimientoDTO.java | 101 ++ .../personales/dto/CpGrupoMovimientoDTO.java | 57 + .../personales/dto/CpMovimientoDTO.java | 77 ++ .../personales/dto/CpTipoMovimientoDTO.java | 47 + .../cuentas/personales/dto/CpUsuariosDTO.java | 92 ++ .../personales/dto/MovimientoAplica.java | 93 ++ .../backingBeans/CpDetalleMovimientoView.java | 469 ++++++++ .../backingBeans/CpGrupoMovimientoView.java | 336 ++++++ .../backingBeans/CpMovimientoView.java | 1062 +++++++++++++++++ .../backingBeans/CpTipoMovimientoView.java | 305 +++++ .../backingBeans/CpUsuariosView.java | 429 +++++++ .../BusinessDelegatorView.java | 476 ++++++++ .../zathura/cuentas/utilities/FacesUtils.java | 471 ++++++++ .../zathura/cuentas/utilities/Utilities.java | 367 ++++++ 94 files changed, 14301 insertions(+) create mode 100644 CuentasPersonales/.classpath create mode 100644 CuentasPersonales/.mymetadata create mode 100644 CuentasPersonales/.project create mode 100644 CuentasPersonales/.settings/com.genuitec.eclipse.ws.prefs create mode 100644 CuentasPersonales/.settings/org.eclipse.jdt.core.prefs create mode 100644 CuentasPersonales/WebRoot/META-INF/MANIFEST.MF create mode 100644 CuentasPersonales/WebRoot/WEB-INF/classes/META-INF/persistence.xml create mode 100644 CuentasPersonales/WebRoot/WEB-INF/classes/log4j.dtd create mode 100644 CuentasPersonales/WebRoot/WEB-INF/classes/log4j.xml create mode 100644 CuentasPersonales/WebRoot/WEB-INF/facelets/footer.jspx create mode 100644 CuentasPersonales/WebRoot/WEB-INF/facelets/footerInitialMenu.jspx create mode 100644 CuentasPersonales/WebRoot/WEB-INF/facelets/header.jspx create mode 100644 CuentasPersonales/WebRoot/WEB-INF/faces-config.xml create mode 100644 CuentasPersonales/WebRoot/WEB-INF/web.xml create mode 100644 CuentasPersonales/WebRoot/XHTML/CommonColumnsContent.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/CommonLayout.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpDetalleMovimiento.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpDetalleMovimientoListDataTable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpDetalleMovimientoListDataTableEditable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpGrupoMovimiento.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpGrupoMovimientoListDataTable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpGrupoMovimientoListDataTableEditable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpMovimiento.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpMovimientoListDataTable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpMovimientoListDataTableEditable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpTipoMovimiento.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpTipoMovimientoListDataTable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpTipoMovimientoListDataTableEditable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpUsuarios.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpUsuariosListDataTable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/cpUsuariosListDataTableEditable.xhtml create mode 100644 CuentasPersonales/WebRoot/XHTML/initialMenu.xhtml create mode 100644 CuentasPersonales/WebRoot/css/style.css create mode 100644 CuentasPersonales/WebRoot/images/ajaxloadingbar.gif create mode 100644 CuentasPersonales/WebRoot/images/bg_fptopbox.png create mode 100644 CuentasPersonales/WebRoot/images/bg_nav.png create mode 100644 CuentasPersonales/WebRoot/images/bg_promo1.png create mode 100644 CuentasPersonales/WebRoot/images/bg_promo2.png create mode 100644 CuentasPersonales/WebRoot/images/bg_promo3.png create mode 100644 CuentasPersonales/WebRoot/images/bullet.png create mode 100644 CuentasPersonales/WebRoot/images/crud.png create mode 100644 CuentasPersonales/WebRoot/images/dataTable.png create mode 100644 CuentasPersonales/WebRoot/images/dataTableEditable.png create mode 100644 CuentasPersonales/WebRoot/images/home.png create mode 100644 CuentasPersonales/WebRoot/images/icon.png create mode 100644 CuentasPersonales/WebRoot/images/icon_rss.png create mode 100644 CuentasPersonales/WebRoot/images/logo.png create mode 100644 CuentasPersonales/WebRoot/index.jsp create mode 100644 CuentasPersonales/generado/META-INF/persistence.xml create mode 100644 CuentasPersonales/generado/log4j.dtd create mode 100644 CuentasPersonales/generado/log4j.xml create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpDetalleMovimientoDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpGrupoMovimientoDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpMovimientoDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpTipoMovimientoDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpUsuariosDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpDetalleMovimientoDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpGrupoMovimientoDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpMovimientoDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpTipoMovimientoDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpUsuariosDAO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/daoFactory/JPADaoFactory.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/dataaccess/entityManager/EntityManagerHelper.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/exceptions/ZMessManager.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/CpDetalleMovimiento.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/CpGrupoMovimiento.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/CpMovimiento.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/CpTipoMovimiento.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/CpUsuarios.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpDetalleMovimientoLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpGrupoMovimientoLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpMovimientoLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpTipoMovimientoLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpUsuariosLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpDetalleMovimientoLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpGrupoMovimientoLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpMovimientoLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpTipoMovimientoLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpUsuariosLogic.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpDetalleMovimientoDTO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpGrupoMovimientoDTO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpMovimientoDTO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpTipoMovimientoDTO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpUsuariosDTO.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/personales/dto/MovimientoAplica.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpDetalleMovimientoView.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpGrupoMovimientoView.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpMovimientoView.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpTipoMovimientoView.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpUsuariosView.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/presentation/businessDelegate/BusinessDelegatorView.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/utilities/FacesUtils.java create mode 100644 CuentasPersonales/generado/org/zathura/cuentas/utilities/Utilities.java diff --git a/CuentasPersonales/.classpath b/CuentasPersonales/.classpath new file mode 100644 index 0000000..8bc7954 --- /dev/null +++ b/CuentasPersonales/.classpath @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/CuentasPersonales/.mymetadata b/CuentasPersonales/.mymetadata new file mode 100644 index 0000000..ec3fe0c --- /dev/null +++ b/CuentasPersonales/.mymetadata @@ -0,0 +1,13 @@ + + + + + + + diff --git a/CuentasPersonales/.project b/CuentasPersonales/.project new file mode 100644 index 0000000..8eef3c5 --- /dev/null +++ b/CuentasPersonales/.project @@ -0,0 +1,45 @@ + + + CuentasPersonales + + + + + + com.genuitec.eclipse.j2eedt.core.WebClasspathBuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + com.genuitec.eclipse.j2eedt.core.J2EEProjectValidator + + + + + com.genuitec.eclipse.j2eedt.core.DeploymentDescriptorValidator + + + + + org.eclipse.wst.validation.validationbuilder + + + + + com.genuitec.eclipse.ast.deploy.core.DeploymentBuilder + + + + + + com.genuitec.eclipse.ast.deploy.core.deploymentnature + com.genuitec.eclipse.j2eedt.core.webnature + org.eclipse.jdt.core.javanature + org.eclipse.wst.jsdt.core.jsNature + + diff --git a/CuentasPersonales/.settings/com.genuitec.eclipse.ws.prefs b/CuentasPersonales/.settings/com.genuitec.eclipse.ws.prefs new file mode 100644 index 0000000..12a8d25 --- /dev/null +++ b/CuentasPersonales/.settings/com.genuitec.eclipse.ws.prefs @@ -0,0 +1,3 @@ +#Wed Apr 04 12:27:09 COT 2012 +eclipse.preferences.version=1 +ws.framework.id=com.genuitec.eclipse.ws.jaxws diff --git a/CuentasPersonales/.settings/org.eclipse.jdt.core.prefs b/CuentasPersonales/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..03498bc --- /dev/null +++ b/CuentasPersonales/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,7 @@ +#Wed Apr 04 12:27:09 COT 2012 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 +org.eclipse.jdt.core.compiler.compliance=1.5 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.5 diff --git a/CuentasPersonales/WebRoot/META-INF/MANIFEST.MF b/CuentasPersonales/WebRoot/META-INF/MANIFEST.MF new file mode 100644 index 0000000..254272e --- /dev/null +++ b/CuentasPersonales/WebRoot/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + diff --git a/CuentasPersonales/WebRoot/WEB-INF/classes/META-INF/persistence.xml b/CuentasPersonales/WebRoot/WEB-INF/classes/META-INF/persistence.xml new file mode 100644 index 0000000..0cb2e4a --- /dev/null +++ b/CuentasPersonales/WebRoot/WEB-INF/classes/META-INF/persistence.xml @@ -0,0 +1,23 @@ + + + + org.hibernate.ejb.HibernatePersistence + org.zathura.cuentas.personales.CpDetalleMovimiento + org.zathura.cuentas.personales.CpGrupoMovimiento + org.zathura.cuentas.personales.CpMovimiento + org.zathura.cuentas.personales.CpTipoMovimiento + org.zathura.cuentas.personales.CpUsuarios + + + + + + + + diff --git a/CuentasPersonales/WebRoot/WEB-INF/classes/log4j.dtd b/CuentasPersonales/WebRoot/WEB-INF/classes/log4j.dtd new file mode 100644 index 0000000..cfc8a5d --- /dev/null +++ b/CuentasPersonales/WebRoot/WEB-INF/classes/log4j.dtd @@ -0,0 +1,166 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/CuentasPersonales/WebRoot/WEB-INF/classes/log4j.xml b/CuentasPersonales/WebRoot/WEB-INF/classes/log4j.xml new file mode 100644 index 0000000..4330e38 --- /dev/null +++ b/CuentasPersonales/WebRoot/WEB-INF/classes/log4j.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/WEB-INF/facelets/footer.jspx b/CuentasPersonales/WebRoot/WEB-INF/facelets/footer.jspx new file mode 100644 index 0000000..ad01ab4 --- /dev/null +++ b/CuentasPersonales/WebRoot/WEB-INF/facelets/footer.jspx @@ -0,0 +1,21 @@ + + + + + + + + + + + + diff --git a/CuentasPersonales/WebRoot/WEB-INF/facelets/footerInitialMenu.jspx b/CuentasPersonales/WebRoot/WEB-INF/facelets/footerInitialMenu.jspx new file mode 100644 index 0000000..ad01ab4 --- /dev/null +++ b/CuentasPersonales/WebRoot/WEB-INF/facelets/footerInitialMenu.jspx @@ -0,0 +1,21 @@ + + + + + + + + + + + + diff --git a/CuentasPersonales/WebRoot/WEB-INF/facelets/header.jspx b/CuentasPersonales/WebRoot/WEB-INF/facelets/header.jspx new file mode 100644 index 0000000..8c375d2 --- /dev/null +++ b/CuentasPersonales/WebRoot/WEB-INF/facelets/header.jspx @@ -0,0 +1,34 @@ + + + + + + + + + +
+ +
+ + +
+
+ + +
diff --git a/CuentasPersonales/WebRoot/WEB-INF/faces-config.xml b/CuentasPersonales/WebRoot/WEB-INF/faces-config.xml new file mode 100644 index 0000000..46c0ce0 --- /dev/null +++ b/CuentasPersonales/WebRoot/WEB-INF/faces-config.xml @@ -0,0 +1,272 @@ + + + + + + cpDetalleMovimientoView + org.zathura.cuentas.presentation.backingBeans.CpDetalleMovimientoView + request + + + cpGrupoMovimientoView + org.zathura.cuentas.presentation.backingBeans.CpGrupoMovimientoView + request + + + cpMovimientoView + org.zathura.cuentas.presentation.backingBeans.CpMovimientoView + session + + + cpTipoMovimientoView + org.zathura.cuentas.presentation.backingBeans.CpTipoMovimientoView + request + + + cpUsuariosView + org.zathura.cuentas.presentation.backingBeans.CpUsuariosView + request + + + /XHTML/cpDetalleMovimiento.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpDetalleMovimientoListDataTable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpDetalleMovimientoListDataTableEditable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpDetalleMovimiento + /XHTML/cpDetalleMovimiento.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpDetalleMovimientoListDataTable + /XHTML/cpDetalleMovimientoListDataTable.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpDetalleMovimientoListDataTableEditable + /XHTML/cpDetalleMovimientoListDataTableEditable.xhtml + + + + + /XHTML/cpGrupoMovimiento.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpGrupoMovimientoListDataTable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpGrupoMovimientoListDataTableEditable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpGrupoMovimiento + /XHTML/cpGrupoMovimiento.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpGrupoMovimientoListDataTable + /XHTML/cpGrupoMovimientoListDataTable.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpGrupoMovimientoListDataTableEditable + /XHTML/cpGrupoMovimientoListDataTableEditable.xhtml + + + + + /XHTML/cpMovimiento.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpMovimientoListDataTable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpMovimientoListDataTableEditable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpMovimiento + /XHTML/cpMovimiento.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpMovimientoListDataTable + /XHTML/cpMovimientoListDataTable.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpMovimientoListDataTableEditable + /XHTML/cpMovimientoListDataTableEditable.xhtml + + + + + /XHTML/cpTipoMovimiento.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpTipoMovimientoListDataTable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpTipoMovimientoListDataTableEditable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpTipoMovimiento + /XHTML/cpTipoMovimiento.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpTipoMovimientoListDataTable + /XHTML/cpTipoMovimientoListDataTable.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpTipoMovimientoListDataTableEditable + /XHTML/cpTipoMovimientoListDataTableEditable.xhtml + + + + + /XHTML/cpUsuarios.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpUsuariosListDataTable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/cpUsuariosListDataTableEditable.xhtml + + goInitialMenu + /XHTML/initialMenu.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpUsuarios + /XHTML/cpUsuarios.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpUsuariosListDataTable + /XHTML/cpUsuariosListDataTable.xhtml + + + + + /XHTML/initialMenu.xhtml + + goCpUsuariosListDataTableEditable + /XHTML/cpUsuariosListDataTableEditable.xhtml + + + + diff --git a/CuentasPersonales/WebRoot/WEB-INF/web.xml b/CuentasPersonales/WebRoot/WEB-INF/web.xml new file mode 100644 index 0000000..7b66cb8 --- /dev/null +++ b/CuentasPersonales/WebRoot/WEB-INF/web.xml @@ -0,0 +1,40 @@ + + + + + index.jsp + + + Faces Servlet + javax.faces.webapp.FacesServlet + 1 + + + Faces Servlet + *.faces + + + + Faces Servlet + *.xhtml + + + + Resource Servlet + org.primefaces.resource.ResourceServlet + + + Resource Servlet + /primefaces_resource/* + + + + primefaces.THEME + aristo + + + + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/CommonColumnsContent.xhtml b/CuentasPersonales/WebRoot/XHTML/CommonColumnsContent.xhtml new file mode 100644 index 0000000..42121fb --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/CommonColumnsContent.xhtml @@ -0,0 +1,14 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/CommonLayout.xhtml b/CuentasPersonales/WebRoot/XHTML/CommonLayout.xhtml new file mode 100644 index 0000000..c8b9ee5 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/CommonLayout.xhtml @@ -0,0 +1,21 @@ + + + + + + .::Zathuracode Generator 3.0::. + + + + + + +
+ +
+ +
+ \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml b/CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml new file mode 100644 index 0000000..5f2cbd4 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml @@ -0,0 +1,384 @@ + + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + Descripcion Movimiento + + + + + + + + + + + + + + + + + + + + + + + Aplicar Movimiento para el Año : + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #{MESES} + + + +
+
+
+ + + + +
+
+ diff --git a/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimiento.xhtml b/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimiento.xhtml new file mode 100644 index 0000000..269c52e --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimiento.xhtml @@ -0,0 +1,84 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimientoListDataTable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimientoListDataTable.xhtml new file mode 100644 index 0000000..f91d4a5 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimientoListDataTable.xhtml @@ -0,0 +1,117 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimientoListDataTableEditable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimientoListDataTableEditable.xhtml new file mode 100644 index 0000000..9461cb6 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpDetalleMovimientoListDataTableEditable.xhtml @@ -0,0 +1,215 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimiento.xhtml b/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimiento.xhtml new file mode 100644 index 0000000..fee0c9f --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimiento.xhtml @@ -0,0 +1,71 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimientoListDataTable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimientoListDataTable.xhtml new file mode 100644 index 0000000..1c10c54 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimientoListDataTable.xhtml @@ -0,0 +1,82 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimientoListDataTableEditable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimientoListDataTableEditable.xhtml new file mode 100644 index 0000000..37f2192 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpGrupoMovimientoListDataTableEditable.xhtml @@ -0,0 +1,131 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpMovimiento.xhtml b/CuentasPersonales/WebRoot/XHTML/cpMovimiento.xhtml new file mode 100644 index 0000000..ccfd90c --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpMovimiento.xhtml @@ -0,0 +1,73 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpMovimientoListDataTable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpMovimientoListDataTable.xhtml new file mode 100644 index 0000000..f95cb98 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpMovimientoListDataTable.xhtml @@ -0,0 +1,89 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpMovimientoListDataTableEditable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpMovimientoListDataTableEditable.xhtml new file mode 100644 index 0000000..eec2f58 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpMovimientoListDataTableEditable.xhtml @@ -0,0 +1,147 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpTipoMovimiento.xhtml b/CuentasPersonales/WebRoot/XHTML/cpTipoMovimiento.xhtml new file mode 100644 index 0000000..b7cfb87 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpTipoMovimiento.xhtml @@ -0,0 +1,69 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpTipoMovimientoListDataTable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpTipoMovimientoListDataTable.xhtml new file mode 100644 index 0000000..32803b3 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpTipoMovimientoListDataTable.xhtml @@ -0,0 +1,75 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpTipoMovimientoListDataTableEditable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpTipoMovimientoListDataTableEditable.xhtml new file mode 100644 index 0000000..54c4db9 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpTipoMovimientoListDataTableEditable.xhtml @@ -0,0 +1,115 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpUsuarios.xhtml b/CuentasPersonales/WebRoot/XHTML/cpUsuarios.xhtml new file mode 100644 index 0000000..a2db67d --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpUsuarios.xhtml @@ -0,0 +1,79 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpUsuariosListDataTable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpUsuariosListDataTable.xhtml new file mode 100644 index 0000000..eee4882 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpUsuariosListDataTable.xhtml @@ -0,0 +1,110 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/cpUsuariosListDataTableEditable.xhtml b/CuentasPersonales/WebRoot/XHTML/cpUsuariosListDataTableEditable.xhtml new file mode 100644 index 0000000..5cb92b5 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/cpUsuariosListDataTableEditable.xhtml @@ -0,0 +1,195 @@ + + + + + + + + + + + +
+
+ + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + +
+ +
+ + \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/XHTML/initialMenu.xhtml b/CuentasPersonales/WebRoot/XHTML/initialMenu.xhtml new file mode 100644 index 0000000..40db701 --- /dev/null +++ b/CuentasPersonales/WebRoot/XHTML/initialMenu.xhtml @@ -0,0 +1,92 @@ + + + + + + + + + + + +
+
+ + + + + + + + +
+ + + + + + + +
+
+ + + + +
+ + + + + + + + +
+
+ + + + +
+ + + + + + + +
+
+ + + + + + + + + +
+
+
+ + + + + +
+ +
+ + + diff --git a/CuentasPersonales/WebRoot/css/style.css b/CuentasPersonales/WebRoot/css/style.css new file mode 100644 index 0000000..6600a8a --- /dev/null +++ b/CuentasPersonales/WebRoot/css/style.css @@ -0,0 +1,400 @@ +/* Main Layout Styles */ +body { + background: #EBEBEB; + font-family: Arial, Helvetica, sans-serif; + font-size: 12px; + color: #666; +} + + + +.right { + float: right; +} + +.left { + float: left; +} + +img { + border: none; +} + +ul,li { + margin: 0; + padding: 0; + list-style: none; +} + +form { + margin: 0; + padding: 0; +} + +a { + color: #0088B5; + font-weight: bold; +} + +a:hover { + color: #0078A0; +} + +#container { + width: 1155px; + padding: 15px; + -moz-border-radius: 13px; + background: #fff; + margin: 10px auto; + overflow: auto; +} + +#content { + width: 1330px; + overflow: auto; +} + +#header { + width: 930px; + height: 55px; +} + +.logo { + +} + +ul#toplinks { + float: right; + color: #999; + margin: 0; + padding: 0; + list-style: none; +} + +ul#toplinks li { + float: right; + margin: 3px 0 0 10px; +} + +ul#toplinks a { + color: #999; + font-weight: normal; +} + +ul#toplinks a:hover { + color: #666; + font-weight: normal; +} + +#nav { + padding: 0; + width: 910px; + background: #008DBC url(images/bg_nav.png) repeat-x bottom; + padding: 9px 0 10px 20px; + -moz-border-radius: 10px; + color: #fff; + height: 12px; + margin: 15px 0; +} + +#nav li { + padding-right: 20px; + float: left; + display: block; +} + +#nav a { + color: #fff; + text-decoration: none; + font-weight: normal; +} + +#nav a:hover { + color: #33CCFF; +} + +#footer { + width: 960px; + text-align: center; + margin: 10px auto; + padding-bottom: 15px; + clear: both; +} + +#footer ul { + width: 380px; + margin: 0 auto; +} + +#footer li { + float: center; + margin-right: 20px; +} + +#footer li a { + color: #999; +} + +/* Homepage Styles */ +#topbox { + width: 890px; + padding: 20px; + -moz-border-radius: 10px; + background: #00ACE6 url(images/bg_fptopbox.png) repeat-x bottom; + overflow: auto; + color: #fff; +} + +#topbox h4 { + color: #fff; + font-size: 12px; + letter-spacing: -1px; + margin: 0; + padding: 0 0 5px 0; +} + +#topbox input { + border: 1px solid #0093C4; + padding: 3px 3px; + width: 230px; +} + +#topbox select { + margin-left: 3px; +} + +#topbox .btn { + padding: 3px 5px; + background: #004055; + color: #fff; + border: none; + -moz-border-radius: 3px; + position: absolute; + margin-left: 5px; + cursor: pointer; + width: 60px; + font-size: 12px; +} + +#topbox .btn:hover { + background: #005773; +} + +#tbleft { + float: left; + width: 450px; + padding: 15px 0 0 10px; +} + +#tbleft .tld { + width: 75px; +} + +#tbright { + font-size: 12px; + float: right; + width: 390px; + border-left: 1px solid #00ACE5; + padding-left: 15px; +} + +#tbright #boxleft { + float: left; + width: 225px; +} + +#tbright input { + width: 145px; + margin: 5px 0 0 5px; +} + +#tbright p { + float: right; + margin: 0; + padding: 0; +} + +#tbright p.link { + float: left; + margin: 13px 0 0 10px; + font-size: 12px; + padding: 0; +} + +#tbright a { + color: #fff; + text-decoration: underline; +} + +ul#promobox { + width: 930px; + position: relative; + float: left; + margin-bottom: 15px; +} + +ul#promobox p { + margin: 0; + padding: 0; +} + +ul#promobox li { + width: 270px; + padding: 20px 10px 20px 20px; + float: left; + background: #008DBC url(images/bg_promo1.png) repeat-x bottom; + margin: 15px 15px 0 0; + -moz-border-radius: 10px; + color: #fff; +} + +ul#promobox ul { + margin: 0 0 10px 0; +} + +ul#promobox li ul li { + margin: 5px 0 0 0; + background: url(images/bullet.png) no-repeat left center; + padding: 0 0 0 10px; + width: 250px; +} + +ul#promobox li h3 { + line-height: 1; + color: #fff; + letter-spacing: -1px; + font-size: 12px; + float: left; + margin: 0; + padding: 0 0 3px 0; +} + +ul#promobox li .pricebox { + line-height: 1; + float: right; + text-align: center; + padding-right: 10px; +} + +ul#promobox li .pricebox .lrg { + line-height: 1; + letter-spacing: -1px; + font-size: 12px; + font-weight: bold; + margin: 0; + padding: 0; +} + +ul#promobox a { + background: #004055; + color: #fff; + float: left; + margin: 15px 10px 0 0; + padding: 5px 10px; + text-decoration: none; + -moz-border-radius: 5px; + font-weight: normal; +} + +ul#promobox a:hover { + background: #005773; +} + +ul#promobox li.two { + background: #00ACE6 url(images/bg_promo2.png) repeat-x bottom; +} + +ul#promobox li.three { + margin-right: 0; + background: #09C1FF url(images/bg_promo3.png) repeat-x bottom; +} + +#newsbox { + width: 575px; + padding: 20px; + background: #f7f7f7; + float: left; + -moz-border-radius: 10px; +} + +#newsbox p { + margin: 0; + padding: 0; +} + +#newsbox h5 { + font-size: 12px; + letter-spacing: -1px; + color: #006C91; + margin: 0; + padding: 0; + line-height: 1; +} + +#newsbox h6 a { + font-size: 12px; + letter-spacing: -1px; + color: #006C91; + margin: 0; + padding: 0; + line-height: 1; +} + +#newsbox h6 { + margin-bottom: 2px; + padding: 0; + line-height: 1; +} + +#newsbox li { + margin-top: 15px; + line-height: 1.5em; +} + +#newsbox .rss a { + float: right; + margin: 3px 8px 0 0; + color: #999; + font-weight: normal; +} + +#quotes { + width: 260px; + padding: 20px; + float: right; + background: #09C1FF url(images/bg_promo3.png) repeat-x bottom; + -moz-border-radius: 10px; + color: #fff; +} + +#quotes p { + margin: 0; + padding: 0; +} + +#quotes h3 { + line-height: 1; + letter-spacing: -1px; + font-size: 25px; + margin: 0; + padding: 0; +} + +#quotes li { + margin-top: 17px; + font-size: 12px; + font-weight: bold; + letter-spacing: -1px; +} + +#quotes a { + float: left; + color: #fff; + padding: 0; + margin-top: 15px; +} + +/* Para que se vean pequenos los componentes*/ +th,td { + font-size: 12px; +} \ No newline at end of file diff --git a/CuentasPersonales/WebRoot/images/ajaxloadingbar.gif b/CuentasPersonales/WebRoot/images/ajaxloadingbar.gif new file mode 100644 index 0000000000000000000000000000000000000000..47adbf03dafbdabb57e1c1dbf8633d0347f66956 GIT binary patch literal 10819 zcmb`NXHZk?{8*d7dlReg7T}tvkwBO{V~yfIR@<`1lwA0JOBU z6ciMsr>8eGG}P48ba!{tXta0l-VF~APfbnH>GZ|L#j2{R*RNl%uC8uwZc?e#-QC^2 zy}kba{{8*^&d$z(fq|{9tj06%%Z$T73F`jf}E)pXPq&dW0ZPaeshd;q_{Bmik*>*F8bO(0>(_Q9T^ME3wM*Qgi-o&XKUMW#dt z#<`)aASN=#798AsaCmM72$3)FlIax_!UE$|Q&$ITYv;QQ=XCc_RU2P16N4-m3WGDVoMK~!Fc$A~@Unhp`|;z;*Ka#(8)H%U zLL38(dL4T~M2!ew-}31m$ZRKYL$u%V4b0yO;Q!)h#8*A187#m?req z;}UQXPM7sw`M87+y2_r*n}?i5134?9Gb-2cs~=uyWE_#CpOo}vKaIQD(KJ-@vB;p% zWn?YE?pcxy6H*VLwjyVMd90s&Z>){rfwAr>zy8h1DOaI7 zodwTGAoZ(^skK}~f$93YX1zGMS@qIeazrLB*&W%t_Qd|vRoBaYO|H9djt3ZbwY&&!0`Fxxt5u!-e~s7il-@0OkEu=)#G4ZnW;T=IBsyn+n^VYx7!p_5is7Xhgt77uzhnq9lw zAduBeGY8zKl`Im}r>_@J<|Xi@2mcYHoEy@tZ$pRC)c|qm;mc2l9`m~;n?{UFC78Qj z|7BworM!+^cydcx!#tKIXv-NlQr(#s$9KPn8YaP_!wfzcIG6>RK#PWxOh=zd_@nM> z6{MOujTGpiO}JN{*&N09!%>$8;0cVucNPhLH}@q;c2!X{VdeA9UL zf#x+@Ubysn(SsNCkas-U_0p5a15QM-+DNz%#E|9cAn z|NHgc)%E!t^OaR#mno)dnh5gFT&|ra`>M1)%;rSeJ9>Gu`Xc;;@kI1#269k{UAU)@ zpKDx1pkI0znv@vqhsQ?v1P9;<4qlOv^jHsKc~nxKeHI4#_eKyx{@w|l0thIC6=ZGm zUVv$EsK=(?zj8|JNS~;ce%f}o z{6?Mv#D^US3=z5_D||IaF3YSV-;}K?yWF^*BYZ6(F?)-|;(54wSt4R$bAikHYm@c6pzDj>+r_){M`VzRU3w|6_+Px7tC%P}IzyF-c`WYLh zYJUq1MzGlg^PEy6zl z+?bxBphdT_8MldKUm(BTszKmr&nq>kh=;Ivrrj>XX&5|K@sseFU@bt$bK#v1Y}fZGIcp4c$foV z3D>Z)5Yn#0rSim&n}+#~i)Wi%xjdzAg*I5~R+t^PN_7wwHzi%E}ciu(WlV6@Emw>xZe=q*i z^yaE)ZI`d+QbfVktHAJ^3R-jV+Y`$3)&iQUFUT-dRawZ_^ZNI#E*)wNXFJpFT4q(&`U zs!ZBpVSx0|dV!Bi!S|Iu!95m)xdNw+TLr14(XH>n9|D(#aZXCDL*DA;#US=_0Q3%L z{KV&rM{QcuwD9sv1-aG>rP~wizs4@qaUcQTnpse?dm5Oyl5fR!oHkRm@%^7db93Wz z2U9+mpWx@rhRP4HUMmK3lVKm0!p1Zm<_=e~gU%lbtmZ%dsLozgSaGyoR=;($QPp++ z`)2K!|1G9};sW&F<06RB7Rz+SW)HW3;hXrRCi38U{V8m{N{s3kPNV~t2xVYJ_}Stx zXd>A!Bp4qN?h|8&L_0;Y2KXjNkjTNAxD+SPKuAcYLt1V|mMy+A%_l$0KHd>2bQ*Q? z*J+Q0@WHzU;3vocS-U}4nTChqOnn2l)MmiOa%q_E=C?UBwlWcn zSp34Y5^8(6w7p8-(2dM$xU>t;W#)~@Rw90z=a1F_wgPy-P~~$dlo|t*u-XYXR0%zC z974ywEK<8_S}+(Y^+^wh7?F`%C-t@J%jE~53g!hyJ-b%g87d)UqaBJxVDiPdQ4;3M zi~daYG|&yHk;2hzj;0z5_!AqwGLh0;u98?a1~6EjM>W$)akgfS}J@i^F-?eG#;zLKQua=$B{6QGMcP_*pl)Lgjin4G%WTq4O< zkiLoD94<@JCnK>{%R?0+);Km#2v7wk|BzAuRC9IZmepi^{gCM10?WOZb<h`|adKi2jxgpRXGO^^E(OEvcZm-M(j@k$x&)w|{hu%@}WgcFzj%)Tav``zBO( zO&c>SG_VpniZMn&HXW3ZLxiz)G6*y^qUKfQSal!UO`^316H=IFFY`G>w}!rHESgae z)>btSlYEqSKk`znbt`IYiZ%v48>^fjae>-k9&$sMCofX=7JuetZQYdAh@jSBu?Sf! z%2JSatdd!v6dMH(X17t!fJnRv*7I5Jkjk-fo3SkProK)*lg@#YT!pf9*QZ+T=m)J3 zYec-4a>-k^vzAj@){mk#$;pIGAkQy1#jNwwy}3IEtE5?cp0be!>8WhGPVu_vq{UuH|gi8CW<*pomT)bOG!Yf zZeC&uSUIoz3MP;EE%IRZ4#mSRrRt8GLcTPYK3CM$$_!Dy^BvuN*{SY+_&FsXc}Kn6 zbo%>UjwuC)Z>jQt%WPscKqw=s$0dIfs zXEXzAj7Jz5>W8=UbV|>}`!itBxfxN>S%v9|$tlrTZ||gXTx~oCX~}9WYwU@Jz`IVs zazYlHkQ1;BF~NuW0-|j{4o~;l_{U65k3kV10u~l&v6F+tqfDD~ThpIm%M*6c?ZpH4 z??>+KjM}kH_~n5Ya~c&!YJad!JyDg%LGX`RDe^c<^#TFJC>D(Lno}c23NarC-xtPP z5@IF)x}~>+%72ioV12V_pr#O5^r~Q^_s-(lT|70vD|V{BIu%MzG+mhC&mbe&6KVu|XG$ zG#IN1=a8tJiy{N`N&l;NBUzDT=eEXE7w6-za_BPO z$7%GT!WZj$YUbs`hx8W2;i^ZmQhh;-@ASgaC*CZtkp~R3?wp$iw~o;(e+tinu|0Ks zP{jQKphsQLC^C@em!%qM)m=gr%6l^rN1`Ghn}+b`Cf!#MH3>$#2l4}6G_ zIdilvzpE5A&dTd!NNsQWdk6UfU!Lx@c?H;1NODS1aY`W=viog0pnFaKR4T^ooOM(U zf59@?`-mo)62h^boAXQjV3dK~P0E;&C7m{YNyRF)=W{rWW zOq{^k?3oe;yOolNk^Bj@yh%YtS|!C~)n0)rM6`dIpK2F%TwT*YW`Fq!FfFT?cxvoZ z37<6Ycy8xWkT@KS$yP1O8*LDYro$SOFKaC`i9{8ijouFUE}a%0frw7t2>P*AsM;z{ z709t5eg10UvCjdOYxh_?XKC@rOm!xZo4y!!FrD8%Jx7=iT#7k}UG<#{VPi~Gal2@m>5mJ$RjD$z&QYU(mL=Rt7pc?vp>=?AH}N_aAv<*Bim@|kV{ zAwA_>s>tbTFe8_c!-7bgG`?v3P(Yccbiu@A;iERsRSka{zGCxoo~VH%{fhJs=kmw3 zPYo8)=D*~i7aqM-TMvNIA6C)V=+k%eX*@Na7Y|1a1=k@A73)q3Av zR-V}bdS^%=SWc_>@6g14;XFJ&y}Vku4GQ^QEF~PnxQi^yTpX6kgg1rA-vuz!Fz@4zrKdW56&&EAHI zyDg*vTrJ+L39pQ7>b0AEZ-y(2fi^tNPZTpa-X1P5(A(LJySwvq#29>>OP$>%9> z9@%%VRFMZxOU`Mc6=BG0d&@O}7rIOywsye=W)&`&^zD6q%h|B~^}NVclQlPDyL(oq zipusx9&eV_;dk()G@U2ic-68BXc-}{i#i6y3+~fg(EO`3(+Zdl9sfcqPuPJ`w^IOg zVkmf*Ijvy2f$D23J9Az?10`oKjh3H*LX>4CL&+bb&thd~%GPKrLN;q%aA z0LT#c;4r3e-V45N5=32*D$a`4kP7}#e#GN^hDRS*Jg4PJ%NxOaT9MjLY{Yyi?&5`hXt6Fk&g+^x+9+<`y?dtMoQ(kh{IFknnj}4uG6CgVwOt5q z=?@0R2yf|~zZX&<eMu*pN) zs0}UEhW3{ea!X06Zy&r=gk;bB^jZy{^edWmh5^DSG#x~Kha9KxpBjFrpV!~EzHk4_ zT29y^`5%rz{(Fu@T2rL1zYC1;ej{>y2GcM6Mw@mOO}u@)tg?x-vw)I((5?trNGOcx z>kSPKiHpESlVVui!xIC28B)^{l6_BSd)S3X=357Zmmo8fV{smlWFOa12Mz2$P~u8t zt@w?S-d-j|Pkac3$}~DQkP`;$8Jig|j+>qt9hfT~UR?SZX4eB>A82+T-dUW=DMGA$ zhNca%4vSDE<GPQUF1KgjBrcX!m0tB~4ej&Cg^Jcm z=ixDC!|Q)cp-qOG<(_=I5$)mzY5R05D}8zs4uXp50BvE}63O17auR^!=R8QwlpA~w zs>asw)w;?!h?^+>uU+w2TLpzU3TQWE zWi+YplA=TePjtcV0=Oza0J~IelE7dDQ7(lCO=Ef&+N6 zN20ui4(ZXCTCDPd;RnGRk%o0?YVLQgG~f+L#>$nDcN1Z)eyfQaY2;&t#6?4II2oOB zMAay33Y_asjZ%$;Iy4WEHRQufFZUu^TO~BB>t$Jl@c_nyp2~O*WOQ~gNn&i(y6K|M zauz2FgX;({zMtVMcTbmwt9ZaxYsYA8$!zPs~_~WW;89ZEH!syy$5YWcuu3&9z zpq$;a_k+eEuI?6!4t*v(nzbN4jv_VuFg0Yo%%g#$z6!)3fdN21{Y%hK1^+TR09fT4X(lLNwI30Ba==#W@%WS~v3rx(mQ(dBf2 zXIO4jQcz)ND5f+&I48E6oK)z9(6B_Bn#eHZrnBO_psWHX&Fgza4`J}PoQ%{%g zjMFA@gASn4S*8Jx?6sBEo>0f7Pm@leBVV9lMc-Bij`o*Z)Y8NvX6rEtwn6s7)v9%!SBB*wbZg71rQf3mxGVYM~M{av&uL_YMe^HPZ|GU7m2xQ!{WY zX`p({igvfo*p}fNXZOr@=Hv>JJ)EQdCo|teGl&2O=jeN-Rs{%?nBwS$vf*N%%c0Pn zaDAXnBSBF^+t<6Ye}s0Dup)A9L10$T*!Zf{^3B}1=M9qOrwDZ(90UfFXh7rcymQL+ zEW`Ax%MS2Z*241{Zp({pD;{q%`BXlC;Y?O)*EMN0S$ivz7BKr`!tT_>l2d)AzPrb_ zdHuRni^gKrlV9cuVEot;#ML=w9HnL@;O>0mz|e{ll-LSolc+Nw3P@DZar}=Y&iZgT zMdQiH^TgaxXZHcMK%^PHmjI_|>PPe|f9VaK`_v&qW?xqxBfk*g8HZjJ>d6ZdKApbCJUXN zS@wRvdUYxsEwnrz!Lj%%Ba1xKWrghsA@$`T7S)kiJd{Jr?8IEjwVV(4L)!4V(+TO} zMbvIpSN6LSct|nF*tAliw)}#>M_DY*_~^ayM<1_9O<%`cQ7CZbIwtQMQc)X5^@^@Exw zG5jpe)8s2#X?ab@b+mO#U4?yC(A5cQY4nTfG5N5~yTMhMcDTgc8}J5V%Un9rz74>^ zgi(cHmkd{1QZ7P`3-Z*P0R?TA-T*R#gn?^5N12DXzxAV)NnFgDkz}v3eVrfXEhc~6@uYMiiy?U!-wc64QKxH&5LN*JCMp%t9v=tmW*Qk~YHRXh9UdEL zi+4QnlJNw`#j&|C{cL6)?NIyW%##h6l|2|*=gkX z_F_AJTtcTRS>BZ5x)E7NHodt1s^sF6BH^43IEc|h%irGdHiVfI$J_;F1$Iz)c*M?~ zpYz;#MNN68DWihjYqlsXh1?YJHl3+yL_h0qu5wtV^pIdC7uqfJx%Fo}gAJf3~K8BD*vu7t5o}hav>@jpUL)m+P6^af7r_a4^?n zV92gG1s7(ougZ>w+X*j`?2P$y2!{QZFD%4k6DgoIeR->pJ_iaQDM^aBU}g=smQ>$O zSd~clP_7?g73o}Pg~8rhV__J9X|P8Iq#hKc5+kn``WC$ivd$Bb4FLh&jmDE5KqQg9pj?q*b% zL3CMVW(OmOdwbjZv*XKsjpvNY-}^m_D3H7)#Ra8*Topl&aacLoiF()3nkEm6^cyel zu9_FGkKW4(eDNt+H_Rc%P*#6O8-M|o$E@nNMz=Cqw%7|A@dWUWGRqt1_1#Mb{}R|d z+m?xEtbj3S3R8gGOtQe#rv|uI;K$v>XSud-ek_<0u1(_mUi5@p<&*C2FGfVZ+S~;q zwCfa->~`;`l*vlojdAF>Wo&8iI7z@J%g&_utNx_gk&C%SN{>szvl=U_+cG%(BWjJ1 zPDbe`LZLCO^3f>^5TnkHPhtQaisO$5wrIy&3@q`MinHy>AO8I%9nM}aj+7q5Mto%bue)Htt)ycoLYJb{%Q?r-kl83rTA`QxKc z5)VUg64sZ5h>V7&1j4NCarOniiS{8cyy5~Qt3#c=Aq*CO;{?RPdO8(-0u&~JzCHvr zrxww35_6bZQ@uuLqZ63g>6zAWG;D#kG}nEClaJnmYhxQjt6SSkyE&l4#gDfFa~Y#% zuM(I-`G4~SXbR`zYsl6hsKep}RB7GLYIp`7PNUa5s-j&H%tFVwcYH3ld*TrMDh-;7 zt@n}@?9Ie%cP*&VvYb04SgYtj^lj4uuoTByU))t&gZprIiOx`tBA0OKr!rK17?Uzr zw(2s3g^w*i;@sbLiQ@g50=fXX4zm#YTK8MpUj zSnmX$=N1TobI<<#F>=`y8W|Bhryv=M6$$D4lj|%>)VnJjgz!)`H#@U?dBK!dAs?t`Z3p&>_f{)ZRTQv{-%fARmkdjXhiXCO5;JkQHwfq6&4PT$5PFeAorz}6f z#VA?~E~h)A+xYoStjQ@>r1TWqDOaZ^YisL(^~Q0W%UREKP5CQCT+*c61YO});vq8o zgFe{$hLtx@TC@P_ge*OJ`4o%wr#p*r=#egg+>-T!=bnpIp2+g;i%GntEDb>sAZ{Hd z-pZC;?#+s8`_e{Mz2!~oU}`E)jCw!E_mX3?;ium%YTe{+8$0(4t;&>5mQx*{=Vqz` zgg8(GyulBI5|cdzIuT>U9awPQ8;zE3S!4A!OJmShB6K^2XSsR8mS3-H9jtY?S?zV1 zu2&Y0voLuv_51141@o<~dW&|}x8!Xf35B(tu7mSw6)?(gNrA{j+mwDdnG<{U(tC3H zD_uerORrt%l`803GXjQ$^Lwm;RhheG^GA&hYOOvW{*WA2e0k+-QhA+#yEnqkyBK25 z$|U82TXz`qQwsXDkNS4`x1@Yjkqf-j1V3X8nU{5HwKw}y%^y4)><9^B;K^t{SLz9X z+&P`OJrnVevc6#Q@O=ZN^Q!^oR(I^<^U5ogRHdu)_J2{0mT|c^v%ztH$eGM9-k`sq zJ{cbWt1kK7p8TJf^N%6Vf7%n+{{kyJ=U9~^Yehcoa9!CsSnjRx5ej+jA9>~Am;nnz zc#)8P0seSmATh|@0Z)p6MLFOI@lgTh(6Dd}%q=N2B`zV@-ZslSvN*ZWJ17K)26JmwC`vg!Wzxl)2kQaXDhCQFyrT~QikcTky3ICoHcZ6{WUHW^%!^p^C z)LU0A+7-p|=W#(TRxM8}l10_*_3ExTH37z9C2Olt(47S{+}&Jt73<59{2b0=Ftpee zddIVcL|0_Jlk?cTzgF4Ch6okFvD=(e1u{eu*-)z4s%is&haKTZ_{;SmdVfZ=n%JZr zAJ^hEVr<)>*@2Ps%2aPT>W$AvMfrX*<~htM%~q4et3vZsFhV9$c5Zu?8g{W>J=}ZC z@>RCFXQYpQ8;u)$S{5hYI^GQDlm+w7__QlSc$N%=E4Gy8W?<>ek|!hMy#a?n$gKUe z+rpxAQrD}QI%g$1sb}(OmA>H7&H`uE+tQ4xYx@T;-)7n0xUzIK*|9SETT_4x?5b7x zWAjh1#3``!k>RIrXT?g&Nb}a;WJ|t>`qwljrY^kV`L}XLBXMCZP-I{FJ>d19}`Bi0lFMk z>^{GWhh9Ww+3G(4d50*eG3r+o^+L^|G>K#ZF$%?P_*G*#6ysF598W8LiNj*oLvRWn zM^Z`ZsgC5;Z0z|Y%ge!?QqNKZR6+=NW~RgxTi6p-F<(LXo!rZ34>j|P`(q63+=Tpt zW{N&fFY#dWD&Y1J^_}W6Zt;GSz?jAss=Xl(yJ3DsX&_HY&AS?^F0t+0hRktkj);sJ zX25JRyg+hMLJtz`II0^};mo(us8GR!XqFTT5qy1|YMZOeLKywk3v`B@XZC5uodfuNl z=JK|VMbC0bE>xeGeoDjm);5)ACW}$i=6q6UOfx g|2k@-t6V^D=-lN;QH?)nSWpZ53kcXZ~y=R literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/bg_fptopbox.png b/CuentasPersonales/WebRoot/images/bg_fptopbox.png new file mode 100644 index 0000000000000000000000000000000000000000..fb3ef689097c61ccff0a998c2cdb9afcca5d39dd GIT binary patch literal 253 zcmeAS@N?(olHy`uVBq!ia0vp^tUz4M!3HD)L{3-&DVAa<&kznEsNqQI0P;BtJR*x3 z7`TN%nDNrxx<5ccnG)BClHmNblJdl&R0hYC{G?O`x6Go{^8BLgVg=`56Shs47Xa0X zg48(|r6!hS=I1GdWag$a7+UI^>Kj-dQ*GD_R1oIr;uzx5nVb^w`HelZRDzRu0th4~ z90)jZpvkp|<*h|XlHp{Pw=Sz>F5O$wd;g_K3G-XuSMDD4ebV{PY-d%?zK$tA m+nZ87mOoke$S;b6iQ%K9`(ocY^IrpPVDNPHb6Mw<&;$S#P*c4C literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/bg_nav.png b/CuentasPersonales/WebRoot/images/bg_nav.png new file mode 100644 index 0000000000000000000000000000000000000000..d0b4f1fed7dc0cb63d844c97b5bde00b644fdf38 GIT binary patch literal 222 zcmeAS@N?(olHy`uVBq!ia0vp^tU#>9!3HF!9}~_7QY^(zo*^7SP{WbZ0pxQQctjR6 zFmMZjFyp1Wb$@_@G9|7NCBgY=CFO}lsSJ)O`AMk?Zka`?<@rU~#R|^BCTyE7F950& z1*vl`N=+=u%+FH@$;?e$p}9|~+$hniqmhweSEKRlsqVf8KqDADUHx3v IIVCg!0IeuPKmY&$ literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/bg_promo1.png b/CuentasPersonales/WebRoot/images/bg_promo1.png new file mode 100644 index 0000000000000000000000000000000000000000..54ca445ea4e584f48b059b8dcdb756026a8f131e GIT binary patch literal 305 zcmeAS@N?(olHy`uVBq!ia0vp^tPBi{LL6*Bmg#BvA|S<5?Bp530R%N1DIGvQXMsm# zF#`j)5C}6~x?A@LC@53n8c`CQpH@GA@g zI#G~1=c3falFa-(g^059Di5;Bj94@YlT) zyI{EmPBML*%=ZizZXLpY5M0 teb%=wJb8NNE8f+qr?zg9@@1VS7;hIIaiGJbd=k)A44$rjF6*2UngBC?Z@&Nl literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/bg_promo2.png b/CuentasPersonales/WebRoot/images/bg_promo2.png new file mode 100644 index 0000000000000000000000000000000000000000..b8fe307cad8e3d6b23af88e0a86710dd9a88dbcc GIT binary patch literal 298 zcmeAS@N?(olHy`uVBq!ia0vp^tPBi{LL6*Bmg#BvA|S<5?Bp530R%N1DIGvQXMsm# zF#`j)5C}6~x?A@LC@53n8c`CQpH@GA@g zI#G~1=c3falFa-(g^0HxxRcz`^2q?Eik1 z_ovL0`Zeb;KAo_6&!O8%>`x~>|LZb0nw>9ESh8x#-<03C&X&)55UwEkFnJ=w)`i|| zDi#Ny-L{-wGchRJdHSMT;+)3>O)mOP7YSNo7Rka~V{Ksha#C`&U~bnN_mWKKh$r%s mZY}-%ZL!j7fd$?Tw@PIHdwjm@x8Diq90pHUKbLh*2~7ZHR%v7a literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/bg_promo3.png b/CuentasPersonales/WebRoot/images/bg_promo3.png new file mode 100644 index 0000000000000000000000000000000000000000..7ae9d680ec035897c77c4262677c735f30d9f120 GIT binary patch literal 327 zcmeAS@N?(olHy`uVBq!ia0vp^tPBi{LL6*Bmg#BvA|S<5?Bp530R%N1DIGvQXMsm# zF#`j)5C}6~x?A@LC@53n8c`CQpH@GA@g zI#G~1=c3falFa-(g^|KR0J%euvqHgDUvh%D0l zTF=huZ*h7}aO{1zh9DF3rYD&JzvP)3-rYEF^m}Ks>Iz2V%DJ!9S{&AhL>kRJDy!o- z*L2z3Nuo?0HfN=TXPwk}m#~p%!K;X-TYAeSw`C&bnG z%zq%bdi~{Bpa@e*kYDhBhNs&NynsB;0*}aI1_o{+5N5n|x9$&6P^QE+q9iy!t)x7$ zD3!r6B|j-u!7Z~WwLHHlyI8?F*o1A<q9Aq7MX8A;nfZANA(^?U42G8aruqh! v$5b2k0u=~&x;Tb#%uM!32uMg^c*MfM%EibyMPx!EP>#XV)z4*}Q$iB}-CI7x literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/crud.png b/CuentasPersonales/WebRoot/images/crud.png new file mode 100644 index 0000000000000000000000000000000000000000..a7df42095547375cf4e07800a3c0e75d22107059 GIT binary patch literal 40894 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⩔f@6#6)ZW_l}-E2X4io8OWXtE-)s%#$!5xH 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

b98b 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 literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/dataTableEditable.png b/CuentasPersonales/WebRoot/images/dataTableEditable.png new file mode 100644 index 0000000000000000000000000000000000000000..047e2f2ebbbf6a41e1778edcb12d94ff27685923 GIT binary patch literal 42766 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 literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/home.png b/CuentasPersonales/WebRoot/images/home.png new file mode 100644 index 0000000000000000000000000000000000000000..345ce4734773d376558fbd17e96b489f1a9e8ce4 GIT binary patch literal 35657 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 W791)pqId)XU<9DhJ}pNHh5rFn5{W|q literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/icon.png b/CuentasPersonales/WebRoot/images/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..8b03f867114a09dfa4af351ddab83223c837e126 GIT binary patch literal 697 zcmV;q0!ICbP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FZT01FZU(%pXi00007bV*G`2iXGx z78nqdO9JBn00KElL_t(I%VS``15O{@+I({VmaDIxJx;)-h6$I%^$RCnvM~Lt6cH8C z;O6C>clFG{I&A6~aT(CkQ2Sq8LX6?vo0tEeKYz(^|NaBUjoWrJ672#zbDe)zuUz?W zqNo1v@#Dt~#kr|}Npiv2Lt9$^|NC3<@83TL7FHGpPEKw$O%tcPM7uy#QsMOF>-XPn z*m?Bjti_vtipZ$@5bc7E%Vxd%$H2s^uW!J@CnUu1;IX}%%d84%>{B*(+e&2awM zZaFzw8OGl~e=xGLb6m!okbeLE&Gh!|TY=}#pNlIg$R=oMsxkik&ln>iF2VTl?)8vY zuU?6K{rZ&yXDs~v` fZ|v;s@O%LP(VOa;X$Fx!00000NkvXXu0mjf8;oHN literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/icon_rss.png b/CuentasPersonales/WebRoot/images/icon_rss.png new file mode 100644 index 0000000000000000000000000000000000000000..80d468ae8ee9fcf052b39eb1d253bcc3e5d965f4 GIT binary patch literal 685 zcmbu4>r0by6vuxus--Ts-Xtm|h_-@AOzEO5-NiPQX+96?m^HOj%!RwDS8V|3a>pVJ@=*UG^G&(4>W};1w zMh)&rQA4BVEUHprrBO{#5y?JWDnrRhln|H*bYcJgXNVXCG2!(@o?>9*P031%2n2## ztXQ=FQ;L6~kU6_oCs!E>@!HSYW5#u3hiL|wWN9X3Uh%qPR&=`Ie!WksM7PlX zQlxDy`uz6!>ON<@zvx5D+L2wl<)GTFp-r3j*o;NrP-aeZ#NUk0)!#kPHCg9w*Qg~W v`Ee@W;EC97tvTSf@`cSdEQ*+#_dT(;<3WA}TMupWLK$A7kSV2hafanDBN}ii literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/images/logo.png b/CuentasPersonales/WebRoot/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..76382049ec23005d7f769e97d98d78158d381515 GIT binary patch literal 12405 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 literal 0 HcmV?d00001 diff --git a/CuentasPersonales/WebRoot/index.jsp b/CuentasPersonales/WebRoot/index.jsp new file mode 100644 index 0000000..487d8ab --- /dev/null +++ b/CuentasPersonales/WebRoot/index.jsp @@ -0,0 +1,17 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> +<% +String path = request.getContextPath(); +String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; +%> + + + + + + +.::Powered by Zathura Code Generator 2012::. + + + + + \ No newline at end of file diff --git a/CuentasPersonales/generado/META-INF/persistence.xml b/CuentasPersonales/generado/META-INF/persistence.xml new file mode 100644 index 0000000..0cb2e4a --- /dev/null +++ b/CuentasPersonales/generado/META-INF/persistence.xml @@ -0,0 +1,23 @@ + + + + org.hibernate.ejb.HibernatePersistence + org.zathura.cuentas.personales.CpDetalleMovimiento + org.zathura.cuentas.personales.CpGrupoMovimiento + org.zathura.cuentas.personales.CpMovimiento + org.zathura.cuentas.personales.CpTipoMovimiento + org.zathura.cuentas.personales.CpUsuarios + + + + + + + + diff --git a/CuentasPersonales/generado/log4j.dtd b/CuentasPersonales/generado/log4j.dtd new file mode 100644 index 0000000..cfc8a5d --- /dev/null +++ b/CuentasPersonales/generado/log4j.dtd @@ -0,0 +1,166 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/CuentasPersonales/generado/log4j.xml b/CuentasPersonales/generado/log4j.xml new file mode 100644 index 0000000..4330e38 --- /dev/null +++ b/CuentasPersonales/generado/log4j.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpDetalleMovimientoDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpDetalleMovimientoDAO.java new file mode 100644 index 0000000..a0318c5 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpDetalleMovimientoDAO.java @@ -0,0 +1,424 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.personales.CpDetalleMovimiento; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.logging.Level; + +import javax.persistence.EntityManager; +import javax.persistence.Query; + + +/** +* A data access object (DAO) providing persistence and search support for +* CpDetalleMovimiento entities. Transaction control of the save(), update() and delete() +* operations must be handled externally by senders of these methods or must be +* manually added to each of these methods for data to be persisted to the JPA +* datastore. +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* @see lidis.CpDetalleMovimiento +* +*/ +public class CpDetalleMovimientoDAO implements ICpDetalleMovimientoDAO { + private EntityManager getEntityManager() { + return EntityManagerHelper.getEntityManager(); + } + + /** + * Perform an initial save of a previously unsaved CpDetalleMovimiento entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpDetalleMovimientoDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpDetalleMovimiento entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpDetalleMovimiento entity) { + EntityManagerHelper.log("saving CpDetalleMovimiento instance", + Level.INFO, null); + + try { + getEntityManager().persist(entity); + EntityManagerHelper.log("save successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("save failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Delete a persistent CpDetalleMovimiento entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpDetalleMovimientoDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpDetalleMovimiento entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpDetalleMovimiento entity) { + EntityManagerHelper.log("deleting CpDetalleMovimiento instance", + Level.INFO, null); + + try { + entity = getEntityManager() + .getReference(CpDetalleMovimiento.class, + entity.getIdDetalleMovimiento()); + getEntityManager().remove(entity); + EntityManagerHelper.log("delete successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("delete failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Persist a previously saved CpDetalleMovimiento entity and return it or a copy of it + * to the sender. A copy of the CpDetalleMovimiento entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = CpDetalleMovimientoDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpDetalleMovimiento entity to update + * @return CpDetalleMovimiento the persisted CpDetalleMovimiento entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpDetalleMovimiento update(CpDetalleMovimiento entity) { + EntityManagerHelper.log("updating CpDetalleMovimiento instance", + Level.INFO, null); + + try { + CpDetalleMovimiento result = getEntityManager() + .merge(entity); + EntityManagerHelper.log("update successful", Level.INFO, null); + + return result; + } catch (RuntimeException re) { + EntityManagerHelper.log("update failed", Level.SEVERE, re); + throw re; + } + } + + public CpDetalleMovimiento findById(Long id) { + EntityManagerHelper.log( + "finding CpDetalleMovimiento instance with id: " + id, Level.INFO, + null); + + try { + CpDetalleMovimiento instance = getEntityManager() + .find(CpDetalleMovimiento.class, + id); + + return instance; + } catch (RuntimeException re) { + EntityManagerHelper.log("find failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpDetalleMovimiento entities with a specific property value. + * + * @param propertyName + * the metaData.name of the CpDetalleMovimiento property to query + * @param value + * the property value to match + * @return List< CpDetalleMovimiento> found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value) { + EntityManagerHelper.log( + "finding CpDetalleMovimiento instance with property: " + + propertyName + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpDetalleMovimiento model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property metaData.name failed", + Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpDetalleMovimiento entities with a specific property value. + * + * @param propertyName + * the name of the CpDetalleMovimiento property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * number of results to return. + * @return List found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value, final int... rowStartIdxAndCount) { + EntityManagerHelper.log( + "finding CpDetalleMovimiento instance with property: " + + propertyName + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpDetalleMovimiento model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property name failed", + Level.SEVERE, re); + throw re; + } + } + + public List findByAnno(Object anno, + int... rowStartIdxAndCount) { + return findByProperty(ANNO, anno, rowStartIdxAndCount); + } + + public List findByAnno(Object anno) { + return findByProperty(ANNO, anno); + } + + public List findByFehcaRegistro(Object fehcaRegistro, + int... rowStartIdxAndCount) { + return findByProperty(FEHCAREGISTRO, fehcaRegistro, rowStartIdxAndCount); + } + + public List findByFehcaRegistro(Object fehcaRegistro) { + return findByProperty(FEHCAREGISTRO, fehcaRegistro); + } + + public List findByIdDetalleMovimiento( + Object idDetalleMovimiento, int... rowStartIdxAndCount) { + return findByProperty(IDDETALLEMOVIMIENTO, idDetalleMovimiento, + rowStartIdxAndCount); + } + + public List findByIdDetalleMovimiento( + Object idDetalleMovimiento) { + return findByProperty(IDDETALLEMOVIMIENTO, idDetalleMovimiento); + } + + public List findByMes(Object mes, + int... rowStartIdxAndCount) { + return findByProperty(MES, mes, rowStartIdxAndCount); + } + + public List findByMes(Object mes) { + return findByProperty(MES, mes); + } + + public List findByObservaciones(Object observaciones, + int... rowStartIdxAndCount) { + return findByProperty(OBSERVACIONES, observaciones, rowStartIdxAndCount); + } + + public List findByObservaciones(Object observaciones) { + return findByProperty(OBSERVACIONES, observaciones); + } + + public List findByPendiente(Object pendiente, + int... rowStartIdxAndCount) { + return findByProperty(PENDIENTE, pendiente, rowStartIdxAndCount); + } + + public List findByPendiente(Object pendiente) { + return findByProperty(PENDIENTE, pendiente); + } + + public List findByValorMovimiento( + Object valorMovimiento, int... rowStartIdxAndCount) { + return findByProperty(VALORMOVIMIENTO, valorMovimiento, + rowStartIdxAndCount); + } + + public List findByValorMovimiento( + Object valorMovimiento) { + return findByProperty(VALORMOVIMIENTO, valorMovimiento); + } + + public List findByValorPago(Object valorPago, + int... rowStartIdxAndCount) { + return findByProperty(VALORPAGO, valorPago, rowStartIdxAndCount); + } + + public List findByValorPago(Object valorPago) { + return findByProperty(VALORPAGO, valorPago); + } + + /** + * Find all CpDetalleMovimiento entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpDetalleMovimiento entities + */ + @SuppressWarnings("unchecked") + public List findAll(final int... rowStartIdxAndCount) { + EntityManagerHelper.log("finding all CpDetalleMovimiento instances", + Level.INFO, null); + + try { + final String queryString = "select model from CpDetalleMovimiento model"; + Query query = getEntityManager().createQuery(queryString); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find all failed", Level.SEVERE, re); + throw re; + } + } + + public List findByCriteria(String whereCondition) { + EntityManagerHelper.log("finding CpDetalleMovimiento " + + whereCondition, Level.INFO, null); + + try { + String where = ((whereCondition == null) || + (whereCondition.length() == 0)) ? "" : ("where " + + whereCondition); + final String queryString = "select model from CpDetalleMovimiento model " + + where; + Query query = getEntityManager().createQuery(queryString); + List entitiesList = query.getResultList(); + + return entitiesList; + } catch (RuntimeException re) { + EntityManagerHelper.log("find By Criteria in CpDetalleMovimiento failed", + Level.SEVERE, re); + throw re; + } + } + + public List findPageCpDetalleMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) { + EntityManagerHelper.log("finding CpDetalleMovimiento findPageCpDetalleMovimiento", + Level.INFO, null); + + if ((sortColumnName != null) && (sortColumnName.length() > 0)) { + try { + String queryString = "select model from CpDetalleMovimiento model order by model." + + sortColumnName + " " + (sortAscending ? "asc" : "desc"); + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } else { + try { + String queryString = "select model from CpDetalleMovimiento model"; + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } + } + + @SuppressWarnings("unchecked") + public Long findTotalNumberCpDetalleMovimiento() { + EntityManagerHelper.log("finding CpDetalleMovimiento count", + Level.INFO, null); + + try { + String queryString = "select count(*) from CpDetalleMovimiento model"; + + return (Long) getEntityManager().createQuery(queryString) + .getSingleResult(); + } catch (RuntimeException re) { + throw re; + } + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpGrupoMovimientoDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpGrupoMovimientoDAO.java new file mode 100644 index 0000000..753cc9b --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpGrupoMovimientoDAO.java @@ -0,0 +1,375 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.personales.CpGrupoMovimiento; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.logging.Level; + +import javax.persistence.EntityManager; +import javax.persistence.Query; + + +/** +* A data access object (DAO) providing persistence and search support for +* CpGrupoMovimiento entities. Transaction control of the save(), update() and delete() +* operations must be handled externally by senders of these methods or must be +* manually added to each of these methods for data to be persisted to the JPA +* datastore. +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* @see lidis.CpGrupoMovimiento +* +*/ +public class CpGrupoMovimientoDAO implements ICpGrupoMovimientoDAO { + private EntityManager getEntityManager() { + return EntityManagerHelper.getEntityManager(); + } + + /** + * Perform an initial save of a previously unsaved CpGrupoMovimiento entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpGrupoMovimientoDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpGrupoMovimiento entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpGrupoMovimiento entity) { + EntityManagerHelper.log("saving CpGrupoMovimiento instance", + Level.INFO, null); + + try { + getEntityManager().persist(entity); + EntityManagerHelper.log("save successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("save failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Delete a persistent CpGrupoMovimiento entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpGrupoMovimientoDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpGrupoMovimiento entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpGrupoMovimiento entity) { + EntityManagerHelper.log("deleting CpGrupoMovimiento instance", + Level.INFO, null); + + try { + entity = getEntityManager() + .getReference(CpGrupoMovimiento.class, + entity.getIdGrupoMovimiento()); + getEntityManager().remove(entity); + EntityManagerHelper.log("delete successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("delete failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Persist a previously saved CpGrupoMovimiento entity and return it or a copy of it + * to the sender. A copy of the CpGrupoMovimiento entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = CpGrupoMovimientoDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpGrupoMovimiento entity to update + * @return CpGrupoMovimiento the persisted CpGrupoMovimiento entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpGrupoMovimiento update(CpGrupoMovimiento entity) { + EntityManagerHelper.log("updating CpGrupoMovimiento instance", + Level.INFO, null); + + try { + CpGrupoMovimiento result = getEntityManager() + .merge(entity); + EntityManagerHelper.log("update successful", Level.INFO, null); + + return result; + } catch (RuntimeException re) { + EntityManagerHelper.log("update failed", Level.SEVERE, re); + throw re; + } + } + + public CpGrupoMovimiento findById(Long id) { + EntityManagerHelper.log("finding CpGrupoMovimiento instance with id: " + + id, Level.INFO, null); + + try { + CpGrupoMovimiento instance = getEntityManager() + .find(CpGrupoMovimiento.class, id); + + return instance; + } catch (RuntimeException re) { + EntityManagerHelper.log("find failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpGrupoMovimiento entities with a specific property value. + * + * @param propertyName + * the metaData.name of the CpGrupoMovimiento property to query + * @param value + * the property value to match + * @return List< CpGrupoMovimiento> found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value) { + EntityManagerHelper.log( + "finding CpGrupoMovimiento instance with property: " + + propertyName + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpGrupoMovimiento model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property metaData.name failed", + Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpGrupoMovimiento entities with a specific property value. + * + * @param propertyName + * the name of the CpGrupoMovimiento property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * number of results to return. + * @return List found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value, final int... rowStartIdxAndCount) { + EntityManagerHelper.log( + "finding CpGrupoMovimiento instance with property: " + + propertyName + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpGrupoMovimiento model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property name failed", + Level.SEVERE, re); + throw re; + } + } + + public List findByDescripcion(Object descripcion, + int... rowStartIdxAndCount) { + return findByProperty(DESCRIPCION, descripcion, rowStartIdxAndCount); + } + + public List findByDescripcion(Object descripcion) { + return findByProperty(DESCRIPCION, descripcion); + } + + public List findByIdGrupoMovimiento( + Object idGrupoMovimiento, int... rowStartIdxAndCount) { + return findByProperty(IDGRUPOMOVIMIENTO, idGrupoMovimiento, + rowStartIdxAndCount); + } + + public List findByIdGrupoMovimiento( + Object idGrupoMovimiento) { + return findByProperty(IDGRUPOMOVIMIENTO, idGrupoMovimiento); + } + + public List findByObservacion(Object observacion, + int... rowStartIdxAndCount) { + return findByProperty(OBSERVACION, observacion, rowStartIdxAndCount); + } + + public List findByObservacion(Object observacion) { + return findByProperty(OBSERVACION, observacion); + } + + /** + * Find all CpGrupoMovimiento entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpGrupoMovimiento entities + */ + @SuppressWarnings("unchecked") + public List findAll(final int... rowStartIdxAndCount) { + EntityManagerHelper.log("finding all CpGrupoMovimiento instances", + Level.INFO, null); + + try { + final String queryString = "select model from CpGrupoMovimiento model"; + Query query = getEntityManager().createQuery(queryString); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find all failed", Level.SEVERE, re); + throw re; + } + } + + public List findByCriteria(String whereCondition) { + EntityManagerHelper.log("finding CpGrupoMovimiento " + whereCondition, + Level.INFO, null); + + try { + String where = ((whereCondition == null) || + (whereCondition.length() == 0)) ? "" : ("where " + + whereCondition); + final String queryString = "select model from CpGrupoMovimiento model " + + where; + Query query = getEntityManager().createQuery(queryString); + List entitiesList = query.getResultList(); + + return entitiesList; + } catch (RuntimeException re) { + EntityManagerHelper.log("find By Criteria in CpGrupoMovimiento failed", + Level.SEVERE, re); + throw re; + } + } + + public List findPageCpGrupoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) { + EntityManagerHelper.log("finding CpGrupoMovimiento findPageCpGrupoMovimiento", + Level.INFO, null); + + if ((sortColumnName != null) && (sortColumnName.length() > 0)) { + try { + String queryString = "select model from CpGrupoMovimiento model order by model." + + sortColumnName + " " + (sortAscending ? "asc" : "desc"); + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } else { + try { + String queryString = "select model from CpGrupoMovimiento model"; + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } + } + + @SuppressWarnings("unchecked") + public Long findTotalNumberCpGrupoMovimiento() { + EntityManagerHelper.log("finding CpGrupoMovimiento count", Level.INFO, + null); + + try { + String queryString = "select count(*) from CpGrupoMovimiento model"; + + return (Long) getEntityManager().createQuery(queryString) + .getSingleResult(); + } catch (RuntimeException re) { + throw re; + } + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpMovimientoDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpMovimientoDAO.java new file mode 100644 index 0000000..d5069e3 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpMovimientoDAO.java @@ -0,0 +1,371 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.personales.CpMovimiento; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.logging.Level; + +import javax.persistence.EntityManager; +import javax.persistence.Query; + + +/** +* A data access object (DAO) providing persistence and search support for +* CpMovimiento entities. Transaction control of the save(), update() and delete() +* operations must be handled externally by senders of these methods or must be +* manually added to each of these methods for data to be persisted to the JPA +* datastore. +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* @see lidis.CpMovimiento +* +*/ +public class CpMovimientoDAO implements ICpMovimientoDAO { + private EntityManager getEntityManager() { + return EntityManagerHelper.getEntityManager(); + } + + /** + * Perform an initial save of a previously unsaved CpMovimiento entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpMovimientoDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpMovimiento entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpMovimiento entity) { + EntityManagerHelper.log("saving CpMovimiento instance", Level.INFO, null); + + try { + getEntityManager().persist(entity); + EntityManagerHelper.log("save successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("save failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Delete a persistent CpMovimiento entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpMovimientoDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpMovimiento entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpMovimiento entity) { + EntityManagerHelper.log("deleting CpMovimiento instance", Level.INFO, + null); + + try { + entity = getEntityManager() + .getReference(CpMovimiento.class, + entity.getIdMovimiento()); + getEntityManager().remove(entity); + EntityManagerHelper.log("delete successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("delete failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Persist a previously saved CpMovimiento entity and return it or a copy of it + * to the sender. A copy of the CpMovimiento entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = CpMovimientoDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpMovimiento entity to update + * @return CpMovimiento the persisted CpMovimiento entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpMovimiento update(CpMovimiento entity) { + EntityManagerHelper.log("updating CpMovimiento instance", Level.INFO, + null); + + try { + CpMovimiento result = getEntityManager() + .merge(entity); + EntityManagerHelper.log("update successful", Level.INFO, null); + + return result; + } catch (RuntimeException re) { + EntityManagerHelper.log("update failed", Level.SEVERE, re); + throw re; + } + } + + public CpMovimiento findById(Long id) { + EntityManagerHelper.log("finding CpMovimiento instance with id: " + id, + Level.INFO, null); + + try { + CpMovimiento instance = getEntityManager() + .find(CpMovimiento.class, id); + + return instance; + } catch (RuntimeException re) { + EntityManagerHelper.log("find failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpMovimiento entities with a specific property value. + * + * @param propertyName + * the metaData.name of the CpMovimiento property to query + * @param value + * the property value to match + * @return List< CpMovimiento> found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value) { + EntityManagerHelper.log( + "finding CpMovimiento instance with property: " + propertyName + + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpMovimiento model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property metaData.name failed", + Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpMovimiento entities with a specific property value. + * + * @param propertyName + * the name of the CpMovimiento property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * number of results to return. + * @return List found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value, final int... rowStartIdxAndCount) { + EntityManagerHelper.log("finding CpMovimiento instance with property: " + + propertyName + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpMovimiento model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property name failed", + Level.SEVERE, re); + throw re; + } + } + + public List findByDescripcionMovimiento( + Object descripcionMovimiento, int... rowStartIdxAndCount) { + return findByProperty(DESCRIPCIONMOVIMIENTO, descripcionMovimiento, + rowStartIdxAndCount); + } + + public List findByDescripcionMovimiento( + Object descripcionMovimiento) { + return findByProperty(DESCRIPCIONMOVIMIENTO, descripcionMovimiento); + } + + public List findByIdMovimiento(Object idMovimiento, + int... rowStartIdxAndCount) { + return findByProperty(IDMOVIMIENTO, idMovimiento, rowStartIdxAndCount); + } + + public List findByIdMovimiento(Object idMovimiento) { + return findByProperty(IDMOVIMIENTO, idMovimiento); + } + + public List findByObservaciones(Object observaciones, + int... rowStartIdxAndCount) { + return findByProperty(OBSERVACIONES, observaciones, rowStartIdxAndCount); + } + + public List findByObservaciones(Object observaciones) { + return findByProperty(OBSERVACIONES, observaciones); + } + + /** + * Find all CpMovimiento entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpMovimiento entities + */ + @SuppressWarnings("unchecked") + public List findAll(final int... rowStartIdxAndCount) { + EntityManagerHelper.log("finding all CpMovimiento instances", + Level.INFO, null); + + try { + final String queryString = "select model from CpMovimiento model"; + Query query = getEntityManager().createQuery(queryString); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find all failed", Level.SEVERE, re); + throw re; + } + } + + public List findByCriteria(String whereCondition) { + EntityManagerHelper.log("finding CpMovimiento " + whereCondition, + Level.INFO, null); + + try { + String where = ((whereCondition == null) || + (whereCondition.length() == 0)) ? "" : ("where " + + whereCondition); + final String queryString = "select model from CpMovimiento model " + + where; + Query query = getEntityManager().createQuery(queryString); + List entitiesList = query.getResultList(); + + return entitiesList; + } catch (RuntimeException re) { + EntityManagerHelper.log("find By Criteria in CpMovimiento failed", + Level.SEVERE, re); + throw re; + } + } + + public List findPageCpMovimiento(String sortColumnName, + boolean sortAscending, int startRow, int maxResults) { + EntityManagerHelper.log("finding CpMovimiento findPageCpMovimiento", + Level.INFO, null); + + if ((sortColumnName != null) && (sortColumnName.length() > 0)) { + try { + String queryString = "select model from CpMovimiento model order by model." + + sortColumnName + " " + (sortAscending ? "asc" : "desc"); + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } else { + try { + String queryString = "select model from CpMovimiento model"; + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } + } + + @SuppressWarnings("unchecked") + public Long findTotalNumberCpMovimiento() { + EntityManagerHelper.log("finding CpMovimiento count", Level.INFO, null); + + try { + String queryString = "select count(*) from CpMovimiento model"; + + return (Long) getEntityManager().createQuery(queryString) + .getSingleResult(); + } catch (RuntimeException re) { + throw re; + } + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpTipoMovimientoDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpTipoMovimientoDAO.java new file mode 100644 index 0000000..9e81483 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpTipoMovimientoDAO.java @@ -0,0 +1,375 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.personales.CpTipoMovimiento; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.logging.Level; + +import javax.persistence.EntityManager; +import javax.persistence.Query; + + +/** +* A data access object (DAO) providing persistence and search support for +* CpTipoMovimiento entities. Transaction control of the save(), update() and delete() +* operations must be handled externally by senders of these methods or must be +* manually added to each of these methods for data to be persisted to the JPA +* datastore. +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* @see lidis.CpTipoMovimiento +* +*/ +public class CpTipoMovimientoDAO implements ICpTipoMovimientoDAO { + private EntityManager getEntityManager() { + return EntityManagerHelper.getEntityManager(); + } + + /** + * Perform an initial save of a previously unsaved CpTipoMovimiento entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpTipoMovimientoDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpTipoMovimiento entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpTipoMovimiento entity) { + EntityManagerHelper.log("saving CpTipoMovimiento instance", Level.INFO, + null); + + try { + getEntityManager().persist(entity); + EntityManagerHelper.log("save successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("save failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Delete a persistent CpTipoMovimiento entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpTipoMovimientoDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpTipoMovimiento entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpTipoMovimiento entity) { + EntityManagerHelper.log("deleting CpTipoMovimiento instance", + Level.INFO, null); + + try { + entity = getEntityManager() + .getReference(CpTipoMovimiento.class, + entity.getIdTipoMovimiento()); + getEntityManager().remove(entity); + EntityManagerHelper.log("delete successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("delete failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Persist a previously saved CpTipoMovimiento entity and return it or a copy of it + * to the sender. A copy of the CpTipoMovimiento entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = CpTipoMovimientoDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpTipoMovimiento entity to update + * @return CpTipoMovimiento the persisted CpTipoMovimiento entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpTipoMovimiento update(CpTipoMovimiento entity) { + EntityManagerHelper.log("updating CpTipoMovimiento instance", + Level.INFO, null); + + try { + CpTipoMovimiento result = getEntityManager() + .merge(entity); + EntityManagerHelper.log("update successful", Level.INFO, null); + + return result; + } catch (RuntimeException re) { + EntityManagerHelper.log("update failed", Level.SEVERE, re); + throw re; + } + } + + public CpTipoMovimiento findById(Long id) { + EntityManagerHelper.log("finding CpTipoMovimiento instance with id: " + + id, Level.INFO, null); + + try { + CpTipoMovimiento instance = getEntityManager() + .find(CpTipoMovimiento.class, id); + + return instance; + } catch (RuntimeException re) { + EntityManagerHelper.log("find failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpTipoMovimiento entities with a specific property value. + * + * @param propertyName + * the metaData.name of the CpTipoMovimiento property to query + * @param value + * the property value to match + * @return List< CpTipoMovimiento> found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value) { + EntityManagerHelper.log( + "finding CpTipoMovimiento instance with property: " + + propertyName + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpTipoMovimiento model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property metaData.name failed", + Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpTipoMovimiento entities with a specific property value. + * + * @param propertyName + * the name of the CpTipoMovimiento property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * number of results to return. + * @return List found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value, final int... rowStartIdxAndCount) { + EntityManagerHelper.log( + "finding CpTipoMovimiento instance with property: " + propertyName + + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpTipoMovimiento model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property name failed", + Level.SEVERE, re); + throw re; + } + } + + public List findByDescripcion(Object descripcion, + int... rowStartIdxAndCount) { + return findByProperty(DESCRIPCION, descripcion, rowStartIdxAndCount); + } + + public List findByDescripcion(Object descripcion) { + return findByProperty(DESCRIPCION, descripcion); + } + + public List findByIdTipoMovimiento( + Object idTipoMovimiento, int... rowStartIdxAndCount) { + return findByProperty(IDTIPOMOVIMIENTO, idTipoMovimiento, + rowStartIdxAndCount); + } + + public List findByIdTipoMovimiento( + Object idTipoMovimiento) { + return findByProperty(IDTIPOMOVIMIENTO, idTipoMovimiento); + } + + public List findByObservacion(Object observacion, + int... rowStartIdxAndCount) { + return findByProperty(OBSERVACION, observacion, rowStartIdxAndCount); + } + + public List findByObservacion(Object observacion) { + return findByProperty(OBSERVACION, observacion); + } + + /** + * Find all CpTipoMovimiento entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpTipoMovimiento entities + */ + @SuppressWarnings("unchecked") + public List findAll(final int... rowStartIdxAndCount) { + EntityManagerHelper.log("finding all CpTipoMovimiento instances", + Level.INFO, null); + + try { + final String queryString = "select model from CpTipoMovimiento model"; + Query query = getEntityManager().createQuery(queryString); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find all failed", Level.SEVERE, re); + throw re; + } + } + + public List findByCriteria(String whereCondition) { + EntityManagerHelper.log("finding CpTipoMovimiento " + whereCondition, + Level.INFO, null); + + try { + String where = ((whereCondition == null) || + (whereCondition.length() == 0)) ? "" : ("where " + + whereCondition); + final String queryString = "select model from CpTipoMovimiento model " + + where; + Query query = getEntityManager().createQuery(queryString); + List entitiesList = query.getResultList(); + + return entitiesList; + } catch (RuntimeException re) { + EntityManagerHelper.log("find By Criteria in CpTipoMovimiento failed", + Level.SEVERE, re); + throw re; + } + } + + public List findPageCpTipoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) { + EntityManagerHelper.log("finding CpTipoMovimiento findPageCpTipoMovimiento", + Level.INFO, null); + + if ((sortColumnName != null) && (sortColumnName.length() > 0)) { + try { + String queryString = "select model from CpTipoMovimiento model order by model." + + sortColumnName + " " + (sortAscending ? "asc" : "desc"); + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } else { + try { + String queryString = "select model from CpTipoMovimiento model"; + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } + } + + @SuppressWarnings("unchecked") + public Long findTotalNumberCpTipoMovimiento() { + EntityManagerHelper.log("finding CpTipoMovimiento count", Level.INFO, + null); + + try { + String queryString = "select count(*) from CpTipoMovimiento model"; + + return (Long) getEntityManager().createQuery(queryString) + .getSingleResult(); + } catch (RuntimeException re) { + throw re; + } + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpUsuariosDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpUsuariosDAO.java new file mode 100644 index 0000000..7fc6b4a --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/CpUsuariosDAO.java @@ -0,0 +1,407 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.personales.CpUsuarios; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.logging.Level; + +import javax.persistence.EntityManager; +import javax.persistence.Query; + + +/** +* A data access object (DAO) providing persistence and search support for +* CpUsuarios entities. Transaction control of the save(), update() and delete() +* operations must be handled externally by senders of these methods or must be +* manually added to each of these methods for data to be persisted to the JPA +* datastore. +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* @see lidis.CpUsuarios +* +*/ +public class CpUsuariosDAO implements ICpUsuariosDAO { + private EntityManager getEntityManager() { + return EntityManagerHelper.getEntityManager(); + } + + /** + * Perform an initial save of a previously unsaved CpUsuarios entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpUsuariosDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpUsuarios entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpUsuarios entity) { + EntityManagerHelper.log("saving CpUsuarios instance", Level.INFO, null); + + try { + getEntityManager().persist(entity); + EntityManagerHelper.log("save successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("save failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Delete a persistent CpUsuarios entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * CpUsuariosDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpUsuarios entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpUsuarios entity) { + EntityManagerHelper.log("deleting CpUsuarios instance", Level.INFO, null); + + try { + entity = getEntityManager() + .getReference(CpUsuarios.class, entity.getIdUsuario()); + getEntityManager().remove(entity); + EntityManagerHelper.log("delete successful", Level.INFO, null); + } catch (RuntimeException re) { + EntityManagerHelper.log("delete failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Persist a previously saved CpUsuarios entity and return it or a copy of it + * to the sender. A copy of the CpUsuarios entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = CpUsuariosDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpUsuarios entity to update + * @return CpUsuarios the persisted CpUsuarios entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpUsuarios update(CpUsuarios entity) { + EntityManagerHelper.log("updating CpUsuarios instance", Level.INFO, null); + + try { + CpUsuarios result = getEntityManager().merge(entity); + EntityManagerHelper.log("update successful", Level.INFO, null); + + return result; + } catch (RuntimeException re) { + EntityManagerHelper.log("update failed", Level.SEVERE, re); + throw re; + } + } + + public CpUsuarios findById(Long id) { + EntityManagerHelper.log("finding CpUsuarios instance with id: " + id, + Level.INFO, null); + + try { + CpUsuarios instance = getEntityManager().find(CpUsuarios.class, id); + + return instance; + } catch (RuntimeException re) { + EntityManagerHelper.log("find failed", Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpUsuarios entities with a specific property value. + * + * @param propertyName + * the metaData.name of the CpUsuarios property to query + * @param value + * the property value to match + * @return List< CpUsuarios> found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value) { + EntityManagerHelper.log("finding CpUsuarios instance with property: " + + propertyName + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpUsuarios model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property metaData.name failed", + Level.SEVERE, re); + throw re; + } + } + + /** + * Find all CpUsuarios entities with a specific property value. + * + * @param propertyName + * the name of the CpUsuarios property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * number of results to return. + * @return List found by query + */ + @SuppressWarnings("unchecked") + public List findByProperty(String propertyName, + final Object value, final int... rowStartIdxAndCount) { + EntityManagerHelper.log("finding CpUsuarios instance with property: " + + propertyName + ", value: " + value, Level.INFO, null); + + try { + final String queryString = "select model from CpUsuarios model where model." + + propertyName + "= :propertyValue"; + Query query = getEntityManager().createQuery(queryString); + query.setParameter("propertyValue", value); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find by property name failed", + Level.SEVERE, re); + throw re; + } + } + + public List findByActivo(Object activo, + int... rowStartIdxAndCount) { + return findByProperty(ACTIVO, activo, rowStartIdxAndCount); + } + + public List findByActivo(Object activo) { + return findByProperty(ACTIVO, activo); + } + + public List findByApellido(Object apellido, + int... rowStartIdxAndCount) { + return findByProperty(APELLIDO, apellido, rowStartIdxAndCount); + } + + public List findByApellido(Object apellido) { + return findByProperty(APELLIDO, apellido); + } + + public List findByContrasena(Object contrasena, + int... rowStartIdxAndCount) { + return findByProperty(CONTRASENA, contrasena, rowStartIdxAndCount); + } + + public List findByContrasena(Object contrasena) { + return findByProperty(CONTRASENA, contrasena); + } + + public List findByCorreo(Object correo, + int... rowStartIdxAndCount) { + return findByProperty(CORREO, correo, rowStartIdxAndCount); + } + + public List findByCorreo(Object correo) { + return findByProperty(CORREO, correo); + } + + public List findByIdUsuario(Object idUsuario, + int... rowStartIdxAndCount) { + return findByProperty(IDUSUARIO, idUsuario, rowStartIdxAndCount); + } + + public List findByIdUsuario(Object idUsuario) { + return findByProperty(IDUSUARIO, idUsuario); + } + + public List findByMovil(Object movil, int... rowStartIdxAndCount) { + return findByProperty(MOVIL, movil, rowStartIdxAndCount); + } + + public List findByMovil(Object movil) { + return findByProperty(MOVIL, movil); + } + + public List findByNombre(Object nombre, + int... rowStartIdxAndCount) { + return findByProperty(NOMBRE, nombre, rowStartIdxAndCount); + } + + public List findByNombre(Object nombre) { + return findByProperty(NOMBRE, nombre); + } + + public List findByObservaciones(Object observaciones, + int... rowStartIdxAndCount) { + return findByProperty(OBSERVACIONES, observaciones, rowStartIdxAndCount); + } + + public List findByObservaciones(Object observaciones) { + return findByProperty(OBSERVACIONES, observaciones); + } + + /** + * Find all CpUsuarios entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpUsuarios entities + */ + @SuppressWarnings("unchecked") + public List findAll(final int... rowStartIdxAndCount) { + EntityManagerHelper.log("finding all CpUsuarios instances", Level.INFO, + null); + + try { + final String queryString = "select model from CpUsuarios model"; + Query query = getEntityManager().createQuery(queryString); + + if ((rowStartIdxAndCount != null) && + (rowStartIdxAndCount.length > 0)) { + int rowStartIdx = Math.max(0, rowStartIdxAndCount[0]); + + if (rowStartIdx > 0) { + query.setFirstResult(rowStartIdx); + } + + if (rowStartIdxAndCount.length > 1) { + int rowCount = Math.max(0, rowStartIdxAndCount[1]); + + if (rowCount > 0) { + query.setMaxResults(rowCount); + } + } + } + + return query.getResultList(); + } catch (RuntimeException re) { + EntityManagerHelper.log("find all failed", Level.SEVERE, re); + throw re; + } + } + + public List findByCriteria(String whereCondition) { + EntityManagerHelper.log("finding CpUsuarios " + whereCondition, + Level.INFO, null); + + try { + String where = ((whereCondition == null) || + (whereCondition.length() == 0)) ? "" : ("where " + + whereCondition); + final String queryString = "select model from CpUsuarios model " + + where; + Query query = getEntityManager().createQuery(queryString); + List entitiesList = query.getResultList(); + + return entitiesList; + } catch (RuntimeException re) { + EntityManagerHelper.log("find By Criteria in CpUsuarios failed", + Level.SEVERE, re); + throw re; + } + } + + public List findPageCpUsuarios(String sortColumnName, + boolean sortAscending, int startRow, int maxResults) { + EntityManagerHelper.log("finding CpUsuarios findPageCpUsuarios", + Level.INFO, null); + + if ((sortColumnName != null) && (sortColumnName.length() > 0)) { + try { + String queryString = "select model from CpUsuarios model order by model." + + sortColumnName + " " + (sortAscending ? "asc" : "desc"); + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } else { + try { + String queryString = "select model from CpUsuarios model"; + + return getEntityManager().createQuery(queryString) + .setFirstResult(startRow).setMaxResults(maxResults) + .getResultList(); + } catch (RuntimeException re) { + throw re; + } + } + } + + @SuppressWarnings("unchecked") + public Long findTotalNumberCpUsuarios() { + EntityManagerHelper.log("finding CpUsuarios count", Level.INFO, null); + + try { + String queryString = "select count(*) from CpUsuarios model"; + + return (Long) getEntityManager().createQuery(queryString) + .getSingleResult(); + } catch (RuntimeException re) { + throw re; + } + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpDetalleMovimientoDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpDetalleMovimientoDAO.java new file mode 100644 index 0000000..2d7bafd --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpDetalleMovimientoDAO.java @@ -0,0 +1,192 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.personales.CpDetalleMovimiento; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * Interface for CpDetalleMovimientoDAO. + * + * @author Zathura Code Generator http://code.google.com/p/zathura + */ +public interface ICpDetalleMovimientoDAO { + // property constants + //public static final Long ANNO = "anno"; + public static final String ANNO = "anno"; + + //public static final Date FEHCAREGISTRO = "fehcaRegistro"; + public static final String FEHCAREGISTRO = "fehcaRegistro"; + + //public static final Long IDDETALLEMOVIMIENTO = "idDetalleMovimiento"; + public static final String IDDETALLEMOVIMIENTO = "idDetalleMovimiento"; + + //public static final Long MES = "mes"; + public static final String MES = "mes"; + + //public static final String OBSERVACIONES = "observaciones"; + public static final String OBSERVACIONES = "observaciones"; + + //public static final String PENDIENTE = "pendiente"; + public static final String PENDIENTE = "pendiente"; + + //public static final Long VALORMOVIMIENTO = "valorMovimiento"; + public static final String VALORMOVIMIENTO = "valorMovimiento"; + + //public static final Long VALORPAGO = "valorPago"; + public static final String VALORPAGO = "valorPago"; + + /** + * Perform an initial save of a previously unsaved CpDetalleMovimiento entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpDetalleMovimientoDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpDetalleMovimiento entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpDetalleMovimiento entity); + + /** + * Delete a persistent CpDetalleMovimiento entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpDetalleMovimientoDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpDetalleMovimiento entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpDetalleMovimiento entity); + + /** + * Persist a previously saved CpDetalleMovimiento entity and return it or a copy of it + * to the sender. A copy of the CpDetalleMovimiento entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = ICpDetalleMovimientoDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpDetalleMovimiento entity to update + * @return CpDetalleMovimiento the persisted CpDetalleMovimiento entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpDetalleMovimiento update(CpDetalleMovimiento entity); + + public CpDetalleMovimiento findById(Long id); + + /** + * Find all CpDetalleMovimiento entities with a specific property value. + * + * @param propertyName + * the name of the CpDetalleMovimiento property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List found by query + */ + public List findByProperty(String propertyName, + Object value, int... rowStartIdxAndCount); + + public List findByCriteria(String whereCondition); + + public List findByAnno(Object anno); + + public List findByAnno(Object anno, + int... rowStartIdxAndCount); + + public List findByFehcaRegistro(Object fehcaRegistro); + + public List findByFehcaRegistro(Object fehcaRegistro, + int... rowStartIdxAndCount); + + public List findByIdDetalleMovimiento( + Object idDetalleMovimiento); + + public List findByIdDetalleMovimiento( + Object idDetalleMovimiento, int... rowStartIdxAndCount); + + public List findByMes(Object mes); + + public List findByMes(Object mes, + int... rowStartIdxAndCount); + + public List findByObservaciones(Object observaciones); + + public List findByObservaciones(Object observaciones, + int... rowStartIdxAndCount); + + public List findByPendiente(Object pendiente); + + public List findByPendiente(Object pendiente, + int... rowStartIdxAndCount); + + public List findByValorMovimiento( + Object valorMovimiento); + + public List findByValorMovimiento( + Object valorMovimiento, int... rowStartIdxAndCount); + + public List findByValorPago(Object valorPago); + + public List findByValorPago(Object valorPago, + int... rowStartIdxAndCount); + + /** + * Find all CpDetalleMovimiento entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpDetalleMovimiento entities + */ + public List findAll(int... rowStartIdxAndCount); + + public List findPageCpDetalleMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults); + + public Long findTotalNumberCpDetalleMovimiento(); +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpGrupoMovimientoDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpGrupoMovimientoDAO.java new file mode 100644 index 0000000..ee13fc6 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpGrupoMovimientoDAO.java @@ -0,0 +1,151 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.personales.CpGrupoMovimiento; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * Interface for CpGrupoMovimientoDAO. + * + * @author Zathura Code Generator http://code.google.com/p/zathura + */ +public interface ICpGrupoMovimientoDAO { + // property constants + //public static final String DESCRIPCION = "descripcion"; + public static final String DESCRIPCION = "descripcion"; + + //public static final Long IDGRUPOMOVIMIENTO = "idGrupoMovimiento"; + public static final String IDGRUPOMOVIMIENTO = "idGrupoMovimiento"; + + //public static final String OBSERVACION = "observacion"; + public static final String OBSERVACION = "observacion"; + + /** + * Perform an initial save of a previously unsaved CpGrupoMovimiento entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpGrupoMovimientoDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpGrupoMovimiento entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpGrupoMovimiento entity); + + /** + * Delete a persistent CpGrupoMovimiento entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpGrupoMovimientoDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpGrupoMovimiento entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpGrupoMovimiento entity); + + /** + * Persist a previously saved CpGrupoMovimiento entity and return it or a copy of it + * to the sender. A copy of the CpGrupoMovimiento entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = ICpGrupoMovimientoDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpGrupoMovimiento entity to update + * @return CpGrupoMovimiento the persisted CpGrupoMovimiento entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpGrupoMovimiento update(CpGrupoMovimiento entity); + + public CpGrupoMovimiento findById(Long id); + + /** + * Find all CpGrupoMovimiento entities with a specific property value. + * + * @param propertyName + * the name of the CpGrupoMovimiento property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List found by query + */ + public List findByProperty(String propertyName, + Object value, int... rowStartIdxAndCount); + + public List findByCriteria(String whereCondition); + + public List findByDescripcion(Object descripcion); + + public List findByDescripcion(Object descripcion, + int... rowStartIdxAndCount); + + public List findByIdGrupoMovimiento( + Object idGrupoMovimiento); + + public List findByIdGrupoMovimiento( + Object idGrupoMovimiento, int... rowStartIdxAndCount); + + public List findByObservacion(Object observacion); + + public List findByObservacion(Object observacion, + int... rowStartIdxAndCount); + + /** + * Find all CpGrupoMovimiento entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpGrupoMovimiento entities + */ + public List findAll(int... rowStartIdxAndCount); + + public List findPageCpGrupoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults); + + public Long findTotalNumberCpGrupoMovimiento(); +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpMovimientoDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpMovimientoDAO.java new file mode 100644 index 0000000..541cde2 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpMovimientoDAO.java @@ -0,0 +1,150 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.personales.CpMovimiento; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * Interface for CpMovimientoDAO. + * + * @author Zathura Code Generator http://code.google.com/p/zathura + */ +public interface ICpMovimientoDAO { + // property constants + //public static final String DESCRIPCIONMOVIMIENTO = "descripcionMovimiento"; + public static final String DESCRIPCIONMOVIMIENTO = "descripcionMovimiento"; + + //public static final Long IDMOVIMIENTO = "idMovimiento"; + public static final String IDMOVIMIENTO = "idMovimiento"; + + //public static final String OBSERVACIONES = "observaciones"; + public static final String OBSERVACIONES = "observaciones"; + + /** + * Perform an initial save of a previously unsaved CpMovimiento entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpMovimientoDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpMovimiento entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpMovimiento entity); + + /** + * Delete a persistent CpMovimiento entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpMovimientoDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpMovimiento entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpMovimiento entity); + + /** + * Persist a previously saved CpMovimiento entity and return it or a copy of it + * to the sender. A copy of the CpMovimiento entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = ICpMovimientoDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpMovimiento entity to update + * @return CpMovimiento the persisted CpMovimiento entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpMovimiento update(CpMovimiento entity); + + public CpMovimiento findById(Long id); + + /** + * Find all CpMovimiento entities with a specific property value. + * + * @param propertyName + * the name of the CpMovimiento property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List found by query + */ + public List findByProperty(String propertyName, Object value, + int... rowStartIdxAndCount); + + public List findByCriteria(String whereCondition); + + public List findByDescripcionMovimiento( + Object descripcionMovimiento); + + public List findByDescripcionMovimiento( + Object descripcionMovimiento, int... rowStartIdxAndCount); + + public List findByIdMovimiento(Object idMovimiento); + + public List findByIdMovimiento(Object idMovimiento, + int... rowStartIdxAndCount); + + public List findByObservaciones(Object observaciones); + + public List findByObservaciones(Object observaciones, + int... rowStartIdxAndCount); + + /** + * Find all CpMovimiento entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpMovimiento entities + */ + public List findAll(int... rowStartIdxAndCount); + + public List findPageCpMovimiento(String sortColumnName, + boolean sortAscending, int startRow, int maxResults); + + public Long findTotalNumberCpMovimiento(); +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpTipoMovimientoDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpTipoMovimientoDAO.java new file mode 100644 index 0000000..38bf7f1 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpTipoMovimientoDAO.java @@ -0,0 +1,151 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.personales.CpTipoMovimiento; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * Interface for CpTipoMovimientoDAO. + * + * @author Zathura Code Generator http://code.google.com/p/zathura + */ +public interface ICpTipoMovimientoDAO { + // property constants + //public static final String DESCRIPCION = "descripcion"; + public static final String DESCRIPCION = "descripcion"; + + //public static final Long IDTIPOMOVIMIENTO = "idTipoMovimiento"; + public static final String IDTIPOMOVIMIENTO = "idTipoMovimiento"; + + //public static final String OBSERVACION = "observacion"; + public static final String OBSERVACION = "observacion"; + + /** + * Perform an initial save of a previously unsaved CpTipoMovimiento entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpTipoMovimientoDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpTipoMovimiento entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpTipoMovimiento entity); + + /** + * Delete a persistent CpTipoMovimiento entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpTipoMovimientoDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpTipoMovimiento entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpTipoMovimiento entity); + + /** + * Persist a previously saved CpTipoMovimiento entity and return it or a copy of it + * to the sender. A copy of the CpTipoMovimiento entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = ICpTipoMovimientoDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpTipoMovimiento entity to update + * @return CpTipoMovimiento the persisted CpTipoMovimiento entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpTipoMovimiento update(CpTipoMovimiento entity); + + public CpTipoMovimiento findById(Long id); + + /** + * Find all CpTipoMovimiento entities with a specific property value. + * + * @param propertyName + * the name of the CpTipoMovimiento property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List found by query + */ + public List findByProperty(String propertyName, + Object value, int... rowStartIdxAndCount); + + public List findByCriteria(String whereCondition); + + public List findByDescripcion(Object descripcion); + + public List findByDescripcion(Object descripcion, + int... rowStartIdxAndCount); + + public List findByIdTipoMovimiento( + Object idTipoMovimiento); + + public List findByIdTipoMovimiento( + Object idTipoMovimiento, int... rowStartIdxAndCount); + + public List findByObservacion(Object observacion); + + public List findByObservacion(Object observacion, + int... rowStartIdxAndCount); + + /** + * Find all CpTipoMovimiento entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpTipoMovimiento entities + */ + public List findAll(int... rowStartIdxAndCount); + + public List findPageCpTipoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults); + + public Long findTotalNumberCpTipoMovimiento(); +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpUsuariosDAO.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpUsuariosDAO.java new file mode 100644 index 0000000..22a66f5 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/dao/ICpUsuariosDAO.java @@ -0,0 +1,188 @@ +package org.zathura.cuentas.dataaccess.dao; + +import org.zathura.cuentas.personales.CpUsuarios; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * Interface for CpUsuariosDAO. + * + * @author Zathura Code Generator http://code.google.com/p/zathura + */ +public interface ICpUsuariosDAO { + // property constants + //public static final String ACTIVO = "activo"; + public static final String ACTIVO = "activo"; + + //public static final String APELLIDO = "apellido"; + public static final String APELLIDO = "apellido"; + + //public static final String CONTRASENA = "contrasena"; + public static final String CONTRASENA = "contrasena"; + + //public static final String CORREO = "correo"; + public static final String CORREO = "correo"; + + //public static final Long IDUSUARIO = "idUsuario"; + public static final String IDUSUARIO = "idUsuario"; + + //public static final Long MOVIL = "movil"; + public static final String MOVIL = "movil"; + + //public static final String NOMBRE = "nombre"; + public static final String NOMBRE = "nombre"; + + //public static final String OBSERVACIONES = "observaciones"; + public static final String OBSERVACIONES = "observaciones"; + + /** + * Perform an initial save of a previously unsaved CpUsuarios entity. All + * subsequent persist actions of this entity should use the #update() + * method. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#persist(Object) EntityManager#persist} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpUsuariosDAO.save(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpUsuarios entity to persist + * @throws RuntimeException + * when the operation fails + */ + public void save(CpUsuarios entity); + + /** + * Delete a persistent CpUsuarios entity. This operation must be performed + * within the a database transaction context for the entity's data to be + * permanently deleted from the persistence store, i.e., database. This + * method uses the + * {@link javax.persistence.EntityManager#remove(Object) EntityManager#delete} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * ICpUsuariosDAO.delete(entity);
+    * EntityManagerHelper.commit();
+    * entity = null;
+    * 
+ * + * @param entity + * CpUsuarios entity to delete + * @throws RuntimeException + * when the operation fails + */ + public void delete(CpUsuarios entity); + + /** + * Persist a previously saved CpUsuarios entity and return it or a copy of it + * to the sender. A copy of the CpUsuarios entity parameter is returned when + * the JPA persistence mechanism has not previously been tracking the + * updated entity. This operation must be performed within the a database + * transaction context for the entity's data to be permanently saved to the + * persistence store, i.e., database. This method uses the + * {@link javax.persistence.EntityManager#merge(Object) EntityManager#merge} + * operation. + * + *
+    * EntityManagerHelper.beginTransaction();
+    * entity = ICpUsuariosDAO.update(entity);
+    * EntityManagerHelper.commit();
+    * 
+ * + * @param entity + * CpUsuarios entity to update + * @return CpUsuarios the persisted CpUsuarios entity instance, may not be the + * same + * @throws RuntimeException + * if the operation fails + */ + public CpUsuarios update(CpUsuarios entity); + + public CpUsuarios findById(Long id); + + /** + * Find all CpUsuarios entities with a specific property value. + * + * @param propertyName + * the name of the CpUsuarios property to query + * @param value + * the property value to match + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List found by query + */ + public List findByProperty(String propertyName, Object value, + int... rowStartIdxAndCount); + + public List findByCriteria(String whereCondition); + + public List findByActivo(Object activo); + + public List findByActivo(Object activo, + int... rowStartIdxAndCount); + + public List findByApellido(Object apellido); + + public List findByApellido(Object apellido, + int... rowStartIdxAndCount); + + public List findByContrasena(Object contrasena); + + public List findByContrasena(Object contrasena, + int... rowStartIdxAndCount); + + public List findByCorreo(Object correo); + + public List findByCorreo(Object correo, + int... rowStartIdxAndCount); + + public List findByIdUsuario(Object idUsuario); + + public List findByIdUsuario(Object idUsuario, + int... rowStartIdxAndCount); + + public List findByMovil(Object movil); + + public List findByMovil(Object movil, int... rowStartIdxAndCount); + + public List findByNombre(Object nombre); + + public List findByNombre(Object nombre, + int... rowStartIdxAndCount); + + public List findByObservaciones(Object observaciones); + + public List findByObservaciones(Object observaciones, + int... rowStartIdxAndCount); + + /** + * Find all CpUsuarios entities. + * + * @param rowStartIdxAndCount + * Optional int varargs. rowStartIdxAndCount[0] specifies the the + * row index in the query result-set to begin collecting the + * results. rowStartIdxAndCount[1] specifies the the maximum + * count of results to return. + * @return List all CpUsuarios entities + */ + public List findAll(int... rowStartIdxAndCount); + + public List findPageCpUsuarios(String sortColumnName, + boolean sortAscending, int startRow, int maxResults); + + public Long findTotalNumberCpUsuarios(); +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/daoFactory/JPADaoFactory.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/daoFactory/JPADaoFactory.java new file mode 100644 index 0000000..775d19e --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/daoFactory/JPADaoFactory.java @@ -0,0 +1,66 @@ +package org.zathura.cuentas.dataaccess.daoFactory; +import org.zathura.cuentas.dataaccess.dao.*; +/** + * Factory for Data Access Objects Strategy The DAO pattern can be made highly flexible + * by adopting the Abstract Factory [GoF] and the Factory Method [GoF] patterns. + * When the underlying storage is not subject to change from one implementation to another, + * this strategy can be implemented using the Factory Method pattern to produce a number of DAOs needed by the application. + * This class is a Factory Method pattern + * + * @author Zathura Code Generator http://code.google.com/p/zathura/ + */ +public class JPADaoFactory { +private static JPADaoFactory instance = null; +/** +* +* @return JPADaoFactory +*/ +public static JPADaoFactory getInstance(){ +if(instance == null){ +instance = new JPADaoFactory(); +} +return instance; +} +private JPADaoFactory(){ +} + /** + * This method instantiates the ICpDetalleMovimientoDAO class for JPA + * that is used in this applications deployment environment to access the data. + * @return ICpDetalleMovimientoDAO implementation + */ + public ICpDetalleMovimientoDAO getCpDetalleMovimientoDAO() { + return new CpDetalleMovimientoDAO(); + } + /** + * This method instantiates the ICpGrupoMovimientoDAO class for JPA + * that is used in this applications deployment environment to access the data. + * @return ICpGrupoMovimientoDAO implementation + */ + public ICpGrupoMovimientoDAO getCpGrupoMovimientoDAO() { + return new CpGrupoMovimientoDAO(); + } + /** + * This method instantiates the ICpMovimientoDAO class for JPA + * that is used in this applications deployment environment to access the data. + * @return ICpMovimientoDAO implementation + */ + public ICpMovimientoDAO getCpMovimientoDAO() { + return new CpMovimientoDAO(); + } + /** + * This method instantiates the ICpTipoMovimientoDAO class for JPA + * that is used in this applications deployment environment to access the data. + * @return ICpTipoMovimientoDAO implementation + */ + public ICpTipoMovimientoDAO getCpTipoMovimientoDAO() { + return new CpTipoMovimientoDAO(); + } + /** + * This method instantiates the ICpUsuariosDAO class for JPA + * that is used in this applications deployment environment to access the data. + * @return ICpUsuariosDAO implementation + */ + public ICpUsuariosDAO getCpUsuariosDAO() { + return new CpUsuariosDAO(); + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/entityManager/EntityManagerHelper.java b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/entityManager/EntityManagerHelper.java new file mode 100644 index 0000000..ef7afd5 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/dataaccess/entityManager/EntityManagerHelper.java @@ -0,0 +1,75 @@ +package org.zathura.cuentas.dataaccess.entityManager; + +import java.util.logging.Level; +import java.util.logging.Logger; + +import javax.persistence.EntityManager; +import javax.persistence.EntityManagerFactory; +import javax.persistence.Persistence; +import javax.persistence.Query; + + +/** +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* +*/ +public class EntityManagerHelper { + private static final EntityManagerFactory emf; + private static final ThreadLocal threadLocal; + private static final Logger logger; + + static { + emf = Persistence.createEntityManagerFactory("CuentasPersonalesPU"); + threadLocal = new ThreadLocal(); + logger = Logger.getLogger("CuentasPersonalesPU"); + logger.setLevel(Level.ALL); + } + + public static EntityManager getEntityManager() { + EntityManager manager = threadLocal.get(); + + if ((manager == null) || !manager.isOpen()) { + manager = emf.createEntityManager(); + threadLocal.set(manager); + } + + return manager; + } + + public static void closeEntityManager() { + EntityManager em = threadLocal.get(); + threadLocal.set(null); + + if (em != null) { + em.close(); + } + } + + public static void beginTransaction() { + getEntityManager().getTransaction().begin(); + } + + public static void commit() { + getEntityManager().getTransaction().commit(); + } + + public static void rollback() { + if ((getEntityManager().getTransaction() != null) && + (getEntityManager().getTransaction().isActive() == true)) { + getEntityManager().getTransaction().rollback(); + } + } + + public static Query createQuery(String query) { + return getEntityManager().createQuery(query); + } + + public static void flush() { + getEntityManager().flush(); + } + + public static void log(String info, Level level, Throwable ex) { + logger.log(level, info, ex); + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/exceptions/ZMessManager.java b/CuentasPersonales/generado/org/zathura/cuentas/exceptions/ZMessManager.java new file mode 100644 index 0000000..f081ae3 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/exceptions/ZMessManager.java @@ -0,0 +1,81 @@ +package org.zathura.cuentas.exceptions; + +public class ZMessManager extends Exception { + private static final long serialVersionUID = 1L; + public final static String ALL = "All "; + public final static String ENTCHILD = "related tables(childs)"; + public final static String FOREIGNDATA = "foreign classes data: "; + public static String ENTITY_SUCCESFULLYSAVED = "Entity succesfully saved"; + public static String ENTITY_SUCCESFULLYDELETED = "Entity succesfully deleted"; + public static String ENTITY_SUCCESFULLYMODIFIED = "Entity succesfully modified"; + public static String ENTITY_WITHSAMEKEY = "Another Entity with the same key was found"; + public static String ENTITY_NOENTITYTOUPDATE = "No Entity was found, with the typed key "; + + public ZMessManager() { + } + + public ZMessManager(String exception) { + super(exception); + } + + public class NotValidFieldException extends ZMessManager { + private static final long serialVersionUID = 1L; + + public NotValidFieldException(String info) { + super("The value for the field: \"" + info + "\" is not valid"); + } + } + + public class EmptyFieldException extends ZMessManager { + private static final long serialVersionUID = 1L; + + public EmptyFieldException(String info) { + super("The value for the field: \"" + info + + "\" cant be null or empty"); + } + } + + public class NotValidFormatException extends ZMessManager { + private static final long serialVersionUID = 1L; + + public NotValidFormatException(String info) { + super("The Format or length for the field: \"" + info + + "\" is not valid"); + } + } + + public class DeletingException extends ZMessManager { + private static final long serialVersionUID = 1L; + + public DeletingException(String info) { + super("The Entity you are trying to delete " + + "may have related information, " + + "please before trying again, " + + "check the data on the entity, \"" + info + "\""); + } + } + + public class ForeignException extends ZMessManager { + private static final long serialVersionUID = 1L; + + public ForeignException(String info) { + super("There was no data related with the input \"" + info + "\""); + } + } + + public class GettingException extends ZMessManager { + private static final long serialVersionUID = 1L; + + public GettingException(String info) { + super("There was an exception getting " + info); + } + } + + public class FindingException extends ZMessManager { + private static final long serialVersionUID = 1L; + + public FindingException(String info) { + super("There was an exception trying to find " + info); + } + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/CpDetalleMovimiento.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpDetalleMovimiento.java new file mode 100644 index 0000000..7b4690a --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpDetalleMovimiento.java @@ -0,0 +1,153 @@ +package org.zathura.cuentas.personales; +// Generated 4/04/2012 12:36:59 PM by Zathura powered by Hibernate Tools 3.2.4.GA + + +import java.util.Date; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.SequenceGenerator; +import javax.persistence.Table; + +/** + * CpDetalleMovimiento generated by Zathura powered by Hibernate-tools(hbm2java) + */ +@Entity +@Table(name="CP_DETALLE_MOVIMIENTO" + ,schema="CUENTAPERSONAL" +) +@SequenceGenerator(name = "detallemovimintoIdSec", sequenceName = "SEC_CPDETALLEMOVIMIENTO") +public class CpDetalleMovimiento implements java.io.Serializable { + + + private Long idDetalleMovimiento; + private CpMovimiento cpMovimiento; + private Long anno; + private Long mes; + private Long valorMovimiento; + private Long valorPago; + private String pendiente; + private Date fehcaRegistro; + private String observaciones; + + public CpDetalleMovimiento() { + } + + + public CpDetalleMovimiento(Long idDetalleMovimiento, CpMovimiento cpMovimiento) { + this.idDetalleMovimiento = idDetalleMovimiento; + this.cpMovimiento = cpMovimiento; + } + public CpDetalleMovimiento(Long idDetalleMovimiento, CpMovimiento cpMovimiento, Long anno, Long mes, Long valorMovimiento, Long valorPago, String pendiente, Date fehcaRegistro, String observaciones) { + this.idDetalleMovimiento = idDetalleMovimiento; + this.cpMovimiento = cpMovimiento; + this.anno = anno; + this.mes = mes; + this.valorMovimiento = valorMovimiento; + this.valorPago = valorPago; + this.pendiente = pendiente; + this.fehcaRegistro = fehcaRegistro; + this.observaciones = observaciones; + } + + @Id + @GeneratedValue(generator = "detallemovimintoIdSec") + @Column(name="ID_DETALLE_MOVIMIENTO", unique=true, nullable=false, precision=22, scale=0) + public Long getIdDetalleMovimiento() { + return this.idDetalleMovimiento; + } + + public void setIdDetalleMovimiento(Long idDetalleMovimiento) { + this.idDetalleMovimiento = idDetalleMovimiento; + } + +@ManyToOne(fetch=FetchType.LAZY) + @JoinColumn(name="ID_MOVIMIENTO", nullable=false) + public CpMovimiento getCpMovimiento() { + return this.cpMovimiento; + } + + public void setCpMovimiento(CpMovimiento cpMovimiento) { + this.cpMovimiento = cpMovimiento; + } + + + @Column(name="ANNO", precision=22, scale=0) + public Long getAnno() { + return this.anno; + } + + public void setAnno(Long anno) { + this.anno = anno; + } + + + @Column(name="MES", precision=22, scale=0) + public Long getMes() { + return this.mes; + } + + public void setMes(Long mes) { + this.mes = mes; + } + + + @Column(name="VALOR_MOVIMIENTO", precision=22, scale=0) + public Long getValorMovimiento() { + return this.valorMovimiento; + } + + public void setValorMovimiento(Long valorMovimiento) { + this.valorMovimiento = valorMovimiento; + } + + + @Column(name="VALOR_PAGO", precision=22, scale=0) + public Long getValorPago() { + return this.valorPago; + } + + public void setValorPago(Long valorPago) { + this.valorPago = valorPago; + } + + + @Column(name="PENDIENTE", length=1) + public String getPendiente() { + return this.pendiente; + } + + public void setPendiente(String pendiente) { + this.pendiente = pendiente; + } + + + @Column(name="FEHCA_REGISTRO", length=7) + public Date getFehcaRegistro() { + return this.fehcaRegistro; + } + + public void setFehcaRegistro(Date fehcaRegistro) { + this.fehcaRegistro = fehcaRegistro; + } + + + @Column(name="OBSERVACIONES", length=100) + public String getObservaciones() { + return this.observaciones; + } + + public void setObservaciones(String observaciones) { + this.observaciones = observaciones; + } + + + + +} + + diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/CpGrupoMovimiento.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpGrupoMovimiento.java new file mode 100644 index 0000000..14e2259 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpGrupoMovimiento.java @@ -0,0 +1,104 @@ +package org.zathura.cuentas.personales; +// Generated 4/04/2012 12:36:59 PM by Zathura powered by Hibernate Tools 3.2.4.GA + + +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.OneToMany; +import javax.persistence.Table; + +/** + * CpGrupoMovimiento generated by Zathura powered by Hibernate-tools(hbm2java) + */ +@Entity +@Table(name="CP_GRUPO_MOVIMIENTO" + ,schema="CUENTAPERSONAL" +) +public class CpGrupoMovimiento implements java.io.Serializable { + + + private Long idGrupoMovimiento; + private CpTipoMovimiento cpTipoMovimiento; + private String descripcion; + private String observacion; + private Set cpMovimientos = new HashSet(0); + + public CpGrupoMovimiento() { + } + + + public CpGrupoMovimiento(Long idGrupoMovimiento, CpTipoMovimiento cpTipoMovimiento) { + this.idGrupoMovimiento = idGrupoMovimiento; + this.cpTipoMovimiento = cpTipoMovimiento; + } + public CpGrupoMovimiento(Long idGrupoMovimiento, CpTipoMovimiento cpTipoMovimiento, String descripcion, String observacion, Set cpMovimientos) { + this.idGrupoMovimiento = idGrupoMovimiento; + this.cpTipoMovimiento = cpTipoMovimiento; + this.descripcion = descripcion; + this.observacion = observacion; + this.cpMovimientos = cpMovimientos; + } + + @Id + + + @Column(name="ID_GRUPO_MOVIMIENTO", unique=true, nullable=false, precision=22, scale=0) + public Long getIdGrupoMovimiento() { + return this.idGrupoMovimiento; + } + + public void setIdGrupoMovimiento(Long idGrupoMovimiento) { + this.idGrupoMovimiento = idGrupoMovimiento; + } + +@ManyToOne(fetch=FetchType.LAZY) + @JoinColumn(name="ID_TIPO_MOVIMIENTO", nullable=false) + public CpTipoMovimiento getCpTipoMovimiento() { + return this.cpTipoMovimiento; + } + + public void setCpTipoMovimiento(CpTipoMovimiento cpTipoMovimiento) { + this.cpTipoMovimiento = cpTipoMovimiento; + } + + + @Column(name="DESCRIPCION", length=50) + public String getDescripcion() { + return this.descripcion; + } + + public void setDescripcion(String descripcion) { + this.descripcion = descripcion; + } + + + @Column(name="OBSERVACION", length=50) + public String getObservacion() { + return this.observacion; + } + + public void setObservacion(String observacion) { + this.observacion = observacion; + } + +@OneToMany(fetch=FetchType.LAZY, mappedBy="cpGrupoMovimiento") + public Set getCpMovimientos() { + return this.cpMovimientos; + } + + public void setCpMovimientos(Set cpMovimientos) { + this.cpMovimientos = cpMovimientos; + } + + + + +} + + diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/CpMovimiento.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpMovimiento.java new file mode 100644 index 0000000..0cc4074 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpMovimiento.java @@ -0,0 +1,119 @@ +package org.zathura.cuentas.personales; +// Generated 4/04/2012 12:36:59 PM by Zathura powered by Hibernate Tools 3.2.4.GA + + +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.OneToMany; +import javax.persistence.SequenceGenerator; +import javax.persistence.Table; + +/** + * CpMovimiento generated by Zathura powered by Hibernate-tools(hbm2java) + */ +@Entity +@Table(name="CP_MOVIMIENTO" + ,schema="CUENTAPERSONAL" +) +@SequenceGenerator(name = "movimintoIdSec", sequenceName = "SEC_CPMOVIMIENTO") +public class CpMovimiento implements java.io.Serializable { + + + private Long idMovimiento; + private CpUsuarios cpUsuarios; + private CpGrupoMovimiento cpGrupoMovimiento; + private String descripcionMovimiento; + private String observaciones; + private Set cpDetalleMovimientos = new HashSet(0); + + public CpMovimiento() { + } + + + public CpMovimiento(Long idMovimiento, CpUsuarios cpUsuarios, CpGrupoMovimiento cpGrupoMovimiento) { + this.idMovimiento = idMovimiento; + this.cpUsuarios = cpUsuarios; + this.cpGrupoMovimiento = cpGrupoMovimiento; + } + public CpMovimiento(Long idMovimiento, CpUsuarios cpUsuarios, CpGrupoMovimiento cpGrupoMovimiento, String descripcionMovimiento, String observaciones, Set cpDetalleMovimientos) { + this.idMovimiento = idMovimiento; + this.cpUsuarios = cpUsuarios; + this.cpGrupoMovimiento = cpGrupoMovimiento; + this.descripcionMovimiento = descripcionMovimiento; + this.observaciones = observaciones; + this.cpDetalleMovimientos = cpDetalleMovimientos; + } + + @Id + @GeneratedValue(generator = "movimintoIdSec") + @Column(name="ID_MOVIMIENTO", unique=true, nullable=false, precision=22, scale=0) + public Long getIdMovimiento() { + return this.idMovimiento; + } + + public void setIdMovimiento(Long idMovimiento) { + this.idMovimiento = idMovimiento; + } + +@ManyToOne(fetch=FetchType.LAZY) + @JoinColumn(name="ID_USUARIO", nullable=false) + public CpUsuarios getCpUsuarios() { + return this.cpUsuarios; + } + + public void setCpUsuarios(CpUsuarios cpUsuarios) { + this.cpUsuarios = cpUsuarios; + } + +@ManyToOne(fetch=FetchType.LAZY) + @JoinColumn(name="ID_GRUPO_MOVIMIENTO", nullable=false) + public CpGrupoMovimiento getCpGrupoMovimiento() { + return this.cpGrupoMovimiento; + } + + public void setCpGrupoMovimiento(CpGrupoMovimiento cpGrupoMovimiento) { + this.cpGrupoMovimiento = cpGrupoMovimiento; + } + + + @Column(name="DESCRIPCION_MOVIMIENTO", length=50) + public String getDescripcionMovimiento() { + return this.descripcionMovimiento; + } + + public void setDescripcionMovimiento(String descripcionMovimiento) { + this.descripcionMovimiento = descripcionMovimiento; + } + + + @Column(name="OBSERVACIONES", length=50) + public String getObservaciones() { + return this.observaciones; + } + + public void setObservaciones(String observaciones) { + this.observaciones = observaciones; + } + +@OneToMany(fetch=FetchType.LAZY, mappedBy="cpMovimiento") + public Set getCpDetalleMovimientos() { + return this.cpDetalleMovimientos; + } + + public void setCpDetalleMovimientos(Set cpDetalleMovimientos) { + this.cpDetalleMovimientos = cpDetalleMovimientos; + } + + + + +} + + diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/CpTipoMovimiento.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpTipoMovimiento.java new file mode 100644 index 0000000..93a106f --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpTipoMovimiento.java @@ -0,0 +1,89 @@ +package org.zathura.cuentas.personales; +// Generated 4/04/2012 12:36:59 PM by Zathura powered by Hibernate Tools 3.2.4.GA + + +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.Id; +import javax.persistence.OneToMany; +import javax.persistence.Table; + +/** + * CpTipoMovimiento generated by Zathura powered by Hibernate-tools(hbm2java) + */ +@Entity +@Table(name="CP_TIPO_MOVIMIENTO" + ,schema="CUENTAPERSONAL" +) +public class CpTipoMovimiento implements java.io.Serializable { + + + private Long idTipoMovimiento; + private String descripcion; + private String observacion; + private Set cpGrupoMovimientos = new HashSet(0); + + public CpTipoMovimiento() { + } + + + public CpTipoMovimiento(Long idTipoMovimiento) { + this.idTipoMovimiento = idTipoMovimiento; + } + public CpTipoMovimiento(Long idTipoMovimiento, String descripcion, String observacion, Set cpGrupoMovimientos) { + this.idTipoMovimiento = idTipoMovimiento; + this.descripcion = descripcion; + this.observacion = observacion; + this.cpGrupoMovimientos = cpGrupoMovimientos; + } + + @Id + + + @Column(name="ID_TIPO_MOVIMIENTO", unique=true, nullable=false, precision=22, scale=0) + public Long getIdTipoMovimiento() { + return this.idTipoMovimiento; + } + + public void setIdTipoMovimiento(Long idTipoMovimiento) { + this.idTipoMovimiento = idTipoMovimiento; + } + + + @Column(name="DESCRIPCION", length=30) + public String getDescripcion() { + return this.descripcion; + } + + public void setDescripcion(String descripcion) { + this.descripcion = descripcion; + } + + + @Column(name="OBSERVACION", length=50) + public String getObservacion() { + return this.observacion; + } + + public void setObservacion(String observacion) { + this.observacion = observacion; + } + +@OneToMany(fetch=FetchType.LAZY, mappedBy="cpTipoMovimiento") + public Set getCpGrupoMovimientos() { + return this.cpGrupoMovimientos; + } + + public void setCpGrupoMovimientos(Set cpGrupoMovimientos) { + this.cpGrupoMovimientos = cpGrupoMovimientos; + } + + + + +} + + diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/CpUsuarios.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpUsuarios.java new file mode 100644 index 0000000..0ca40be --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/CpUsuarios.java @@ -0,0 +1,149 @@ +package org.zathura.cuentas.personales; +// Generated 4/04/2012 12:36:59 PM by Zathura powered by Hibernate Tools 3.2.4.GA + + +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.Id; +import javax.persistence.OneToMany; +import javax.persistence.Table; + +/** + * CpUsuarios generated by Zathura powered by Hibernate-tools(hbm2java) + */ +@Entity +@Table(name="CP_USUARIOS" + ,schema="CUENTAPERSONAL" +) +public class CpUsuarios implements java.io.Serializable { + + + private Long idUsuario; + private String nombre; + private String apellido; + private String correo; + private String contrasena; + private Long movil; + private String activo; + private String observaciones; + private Set cpMovimientos = new HashSet(0); + + public CpUsuarios() { + } + + + public CpUsuarios(Long idUsuario) { + this.idUsuario = idUsuario; + } + public CpUsuarios(Long idUsuario, String nombre, String apellido, String correo, String contrasena, Long movil, String activo, String observaciones, Set cpMovimientos) { + this.idUsuario = idUsuario; + this.nombre = nombre; + this.apellido = apellido; + this.correo = correo; + this.contrasena = contrasena; + this.movil = movil; + this.activo = activo; + this.observaciones = observaciones; + this.cpMovimientos = cpMovimientos; + } + + @Id + + + @Column(name="ID_USUARIO", unique=true, nullable=false, precision=22, scale=0) + public Long getIdUsuario() { + return this.idUsuario; + } + + public void setIdUsuario(Long idUsuario) { + this.idUsuario = idUsuario; + } + + + @Column(name="NOMBRE", length=50) + public String getNombre() { + return this.nombre; + } + + public void setNombre(String nombre) { + this.nombre = nombre; + } + + + @Column(name="APELLIDO", length=50) + public String getApellido() { + return this.apellido; + } + + public void setApellido(String apellido) { + this.apellido = apellido; + } + + + @Column(name="CORREO", length=50) + public String getCorreo() { + return this.correo; + } + + public void setCorreo(String correo) { + this.correo = correo; + } + + + @Column(name="CONTRASENA", length=50) + public String getContrasena() { + return this.contrasena; + } + + public void setContrasena(String contrasena) { + this.contrasena = contrasena; + } + + + @Column(name="MOVIL", precision=22, scale=0) + public Long getMovil() { + return this.movil; + } + + public void setMovil(Long movil) { + this.movil = movil; + } + + + @Column(name="ACTIVO", length=1) + public String getActivo() { + return this.activo; + } + + public void setActivo(String activo) { + this.activo = activo; + } + + + @Column(name="OBSERVACIONES", length=50) + public String getObservaciones() { + return this.observaciones; + } + + public void setObservaciones(String observaciones) { + this.observaciones = observaciones; + } + +@OneToMany(fetch=FetchType.LAZY, mappedBy="cpUsuarios") + public Set getCpMovimientos() { + return this.cpMovimientos; + } + + public void setCpMovimientos(Set cpMovimientos) { + this.cpMovimientos = cpMovimientos; + } + + + + +} + + diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpDetalleMovimientoLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpDetalleMovimientoLogic.java new file mode 100644 index 0000000..8c282e5 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpDetalleMovimientoLogic.java @@ -0,0 +1,616 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.dataaccess.daoFactory.JPADaoFactory; +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpDetalleMovimientoDTO; +import org.zathura.cuentas.utilities.Utilities; + +import java.math.BigDecimal; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * interface CpDetalleMovimientoLogic + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpDetalleMovimientoLogic implements ICpDetalleMovimientoLogic { + public List getCpDetalleMovimiento() + throws Exception { + List list = new ArrayList(); + + try { + list = JPADaoFactory.getInstance().getCpDetalleMovimientoDAO() + .findAll(0); + } catch (Exception e) { + throw new ZMessManager().new GettingException(ZMessManager.ALL + + "CpDetalleMovimiento"); + } finally { + } + + return list; + } + + public void saveCpDetalleMovimiento(Long anno, Date fehcaRegistro, + Long idDetalleMovimiento, Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception { + CpDetalleMovimiento entity = null; + + try { + if ((anno != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + anno, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException("anno"); + } + + if (idDetalleMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idDetalleMovimiento"); + } + + if ((idDetalleMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idDetalleMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idDetalleMovimiento"); + } + + if ((mes != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + mes, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException("mes"); + } + + if ((observaciones != null) && + (Utilities.checkWordAndCheckWithlength(observaciones, 100) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observaciones"); + } + + if ((pendiente != null) && + (Utilities.checkWordAndCheckWithlength(pendiente, 1) == false)) { + throw new ZMessManager().new NotValidFormatException( + "pendiente"); + } + + if ((valorMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + valorMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "valorMovimiento"); + } + + if ((valorPago != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + valorPago, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "valorPago"); + } + + if (idMovimiento_CpMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idMovimiento_CpMovimiento"); + } + + if ((idMovimiento_CpMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idMovimiento_CpMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idMovimiento_CpMovimiento"); + } + + ICpMovimientoLogic logicCpMovimiento1 = new CpMovimientoLogic(); + CpMovimiento cpMovimientoClass = logicCpMovimiento1.getCpMovimiento(idMovimiento_CpMovimiento); + + if (cpMovimientoClass == null) { + throw new ZMessManager().new ForeignException("cpMovimiento"); + } + + entity = getCpDetalleMovimiento(idDetalleMovimiento); + + if (entity != null) { + throw new ZMessManager(ZMessManager.ENTITY_WITHSAMEKEY); + } + + entity = new CpDetalleMovimiento(); + entity.setAnno(anno); + entity.setFehcaRegistro(fehcaRegistro); + entity.setIdDetalleMovimiento(idDetalleMovimiento); + entity.setMes(mes); + entity.setObservaciones(observaciones); + entity.setPendiente(pendiente); + entity.setValorMovimiento(valorMovimiento); + entity.setValorPago(valorPago); + entity.setCpMovimiento(cpMovimientoClass); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpDetalleMovimientoDAO().save(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void saveCpDetalleMovimientoWithOutId(Long anno, Date fehcaRegistro, + Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception { + CpDetalleMovimiento entity = null; + + try { + if ((anno != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + anno, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException("anno"); + } + + if ((mes != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + mes, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException("mes"); + } + + if ((observaciones != null) && + (Utilities.checkWordAndCheckWithlength(observaciones, 100) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observaciones"); + } + + if ((pendiente != null) && + (Utilities.checkWordAndCheckWithlength(pendiente, 1) == false)) { + throw new ZMessManager().new NotValidFormatException( + "pendiente"); + } + + if ((valorMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + valorMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "valorMovimiento"); + } + + if ((valorPago != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + valorPago, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "valorPago"); + } + + if (idMovimiento_CpMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idMovimiento_CpMovimiento"); + } + + if ((idMovimiento_CpMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idMovimiento_CpMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idMovimiento_CpMovimiento"); + } + + ICpMovimientoLogic logicCpMovimiento1 = new CpMovimientoLogic(); + CpMovimiento cpMovimientoClass = logicCpMovimiento1.getCpMovimiento(idMovimiento_CpMovimiento); + + if (cpMovimientoClass == null) { + throw new ZMessManager().new ForeignException("cpMovimiento"); + } + + + + if (entity != null) { + throw new ZMessManager(ZMessManager.ENTITY_WITHSAMEKEY); + } + + entity = new CpDetalleMovimiento(); + entity.setAnno(anno); + entity.setFehcaRegistro(fehcaRegistro); + entity.setMes(mes); + entity.setObservaciones(observaciones); + entity.setPendiente(pendiente); + entity.setValorMovimiento(valorMovimiento); + entity.setValorPago(valorPago); + entity.setCpMovimiento(cpMovimientoClass); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpDetalleMovimientoDAO().save(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void deleteCpDetalleMovimiento(Long idDetalleMovimiento) + throws Exception { + CpDetalleMovimiento entity = null; + + if (idDetalleMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idDetalleMovimiento"); + } + + entity = getCpDetalleMovimiento(idDetalleMovimiento); + + if (entity == null) { + throw new ZMessManager().new EmptyFieldException( + "CpDetalleMovimiento"); + } + + try { + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpDetalleMovimientoDAO() + .delete(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void updateCpDetalleMovimiento(Long anno, Date fehcaRegistro, + Long idDetalleMovimiento, Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception { + CpDetalleMovimiento entity = null; + + try { + if ((anno != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + anno, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException("anno"); + } + + if (idDetalleMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idDetalleMovimiento"); + } + + if ((idDetalleMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idDetalleMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idDetalleMovimiento"); + } + + if ((mes != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + mes, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException("mes"); + } + + if ((observaciones != null) && + (Utilities.checkWordAndCheckWithlength(observaciones, 100) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observaciones"); + } + + if ((pendiente != null) && + (Utilities.checkWordAndCheckWithlength(pendiente, 1) == false)) { + throw new ZMessManager().new NotValidFormatException( + "pendiente"); + } + + if ((valorMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + valorMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "valorMovimiento"); + } + + if ((valorPago != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + valorPago, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "valorPago"); + } + + if (idMovimiento_CpMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idMovimiento_CpMovimiento"); + } + + if ((idMovimiento_CpMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idMovimiento_CpMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idMovimiento_CpMovimiento"); + } + + ICpMovimientoLogic logicCpMovimiento1 = new CpMovimientoLogic(); + CpMovimiento cpMovimientoClass = logicCpMovimiento1.getCpMovimiento(idMovimiento_CpMovimiento); + + if (cpMovimientoClass == null) { + throw new ZMessManager().new ForeignException("cpMovimiento"); + } + + entity = getCpDetalleMovimiento(idDetalleMovimiento); + + if (entity == null) { + throw new ZMessManager(ZMessManager.ENTITY_NOENTITYTOUPDATE); + } + + entity.setAnno(anno); + entity.setFehcaRegistro(fehcaRegistro); + entity.setIdDetalleMovimiento(idDetalleMovimiento); + entity.setMes(mes); + entity.setObservaciones(observaciones); + entity.setPendiente(pendiente); + entity.setValorMovimiento(valorMovimiento); + entity.setValorPago(valorPago); + entity.setCpMovimiento(cpMovimientoClass); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpDetalleMovimientoDAO() + .update(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public CpDetalleMovimiento getCpDetalleMovimiento(Long idDetalleMovimiento) + throws Exception { + CpDetalleMovimiento entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpDetalleMovimientoDAO() + .findById(idDetalleMovimiento); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpDetalleMovimiento"); + } finally { + } + + return entity; + } + + public List getDataCpDetalleMovimiento() + throws Exception { + try { + List cpDetalleMovimiento = JPADaoFactory.getInstance() + .getCpDetalleMovimientoDAO() + .findAll(0); + + List cpDetalleMovimientoDTO = new ArrayList(); + + for (CpDetalleMovimiento cpDetalleMovimientoTmp : cpDetalleMovimiento) { + CpDetalleMovimientoDTO cpDetalleMovimientoDTO2 = new CpDetalleMovimientoDTO(); + + cpDetalleMovimientoDTO2.setIdDetalleMovimiento(cpDetalleMovimientoTmp.getIdDetalleMovimiento()); + cpDetalleMovimientoDTO2.setAnno((cpDetalleMovimientoTmp.getAnno() != null) + ? cpDetalleMovimientoTmp.getAnno() : null); + cpDetalleMovimientoDTO2.setFehcaRegistro(cpDetalleMovimientoTmp.getFehcaRegistro()); + cpDetalleMovimientoDTO2.setMes((cpDetalleMovimientoTmp.getMes() != null) + ? cpDetalleMovimientoTmp.getMes() : null); + cpDetalleMovimientoDTO2.setObservaciones((cpDetalleMovimientoTmp.getObservaciones() != null) + ? cpDetalleMovimientoTmp.getObservaciones() : null); + cpDetalleMovimientoDTO2.setPendiente((cpDetalleMovimientoTmp.getPendiente() != null) + ? cpDetalleMovimientoTmp.getPendiente() : null); + cpDetalleMovimientoDTO2.setValorMovimiento((cpDetalleMovimientoTmp.getValorMovimiento() != null) + ? cpDetalleMovimientoTmp.getValorMovimiento() : null); + cpDetalleMovimientoDTO2.setValorPago((cpDetalleMovimientoTmp.getValorPago() != null) + ? cpDetalleMovimientoTmp.getValorPago() : null); + cpDetalleMovimientoDTO2.setIdMovimiento_CpMovimiento((cpDetalleMovimientoTmp.getCpMovimiento() + .getIdMovimiento() != null) + ? cpDetalleMovimientoTmp.getCpMovimiento().getIdMovimiento() + : null); + cpDetalleMovimientoDTO.add(cpDetalleMovimientoDTO2); + } + + return cpDetalleMovimientoDTO; + } catch (Exception e) { + throw e; + } + } + + public List findPageCpDetalleMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception { + List entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpDetalleMovimientoDAO() + .findPageCpDetalleMovimiento(sortColumnName, + sortAscending, startRow, maxResults); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpDetalleMovimiento"); + } + + return entity; + } + + public Long findTotalNumberCpDetalleMovimiento() throws Exception { + Long entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpDetalleMovimientoDAO() + .findTotalNumberCpDetalleMovimiento(); + } catch (Exception e) { + throw new ZMessManager().new FindingException( + "CpDetalleMovimiento Count"); + } finally { + } + + return entity; + } + + /** + * + * @param varibles + * este arreglo debera tener: + * + * [0] = String variable = (String) varibles[i]; representa como se llama la + * variable en el pojo + * + * [1] = Boolean booVariable = (Boolean) varibles[i + 1]; representa si el + * valor necesita o no ''(comillas simples)usado para campos de tipo string + * + * [2] = Object value = varibles[i + 2]; representa el valor que se va a + * buscar en la BD + * + * [3] = String comparator = (String) varibles[i + 3]; representa que tipo + * de busqueda voy a hacer.., ejemplo: where nombre=william o where nombre<>william, + * en este campo iria el tipo de comparador que quiero si es = o <> + * + * Se itera de 4 en 4..., entonces 4 registros del arreglo representan 1 + * busqueda en un campo, si se ponen mas pues el continuara buscando en lo + * que se le ingresen en los otros 4 + * + * + * @param variablesBetween + * + * la diferencia son estas dos posiciones + * + * [0] = String variable = (String) varibles[j]; la variable ne la BD que va + * a ser buscada en un rango + * + * [1] = Object value = varibles[j + 1]; valor 1 para buscar en un rango + * + * [2] = Object value2 = varibles[j + 2]; valor 2 para buscar en un rango + * ejempolo: a > 1 and a < 5 --> 1 seria value y 5 seria value2 + * + * [3] = String comparator1 = (String) varibles[j + 3]; comparador 1 + * ejemplo: a comparator1 1 and a < 5 + * + * [4] = String comparator2 = (String) varibles[j + 4]; comparador 2 + * ejemplo: a comparador1>1 and a comparador2<5 (el original: a > 1 and a < + * 5) * + * @param variablesBetweenDates(en + * este caso solo para mysql) + * [0] = String variable = (String) varibles[k]; el nombre de la variable que hace referencia a + * una fecha + * + * [1] = Object object1 = varibles[k + 2]; fecha 1 a comparar(deben ser + * dates) + * + * [2] = Object object2 = varibles[k + 3]; fecha 2 a comparar(deben ser + * dates) + * + * esto hace un between entre las dos fechas. + * + * @return lista con los objetos que se necesiten + * @throws Exception + */ + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception { + List list = new ArrayList(); + String where = new String(); + String tempWhere = new String(); + + if (variables != null) { + for (int i = 0; i < variables.length; i++) { + if ((variables[i] != null) && (variables[i + 1] != null) && + (variables[i + 2] != null) && + (variables[i + 3] != null)) { + String variable = (String) variables[i]; + Boolean booVariable = (Boolean) variables[i + 1]; + Object value = variables[i + 2]; + String comparator = (String) variables[i + 3]; + + if (booVariable.booleanValue()) { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " \'" + + value + "\' )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " \'" + value + "\' )"); + } else { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " " + + value + " )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " " + value + " )"); + } + } + + i = i + 3; + } + } + + if (variablesBetween != null) { + for (int j = 0; j < variablesBetween.length; j++) { + if ((variablesBetween[j] != null) && + (variablesBetween[j + 1] != null) && + (variablesBetween[j + 2] != null) && + (variablesBetween[j + 3] != null) && + (variablesBetween[j + 4] != null)) { + String variable = (String) variablesBetween[j]; + Object value = variablesBetween[j + 1]; + Object value2 = variablesBetween[j + 2]; + String comparator1 = (String) variablesBetween[j + 3]; + String comparator2 = (String) variablesBetween[j + 4]; + tempWhere = (tempWhere.length() == 0) + ? ("(" + value + " " + comparator1 + " " + variable + + " and " + variable + " " + comparator2 + " " + value2 + + " )") + : (tempWhere + " AND (" + value + " " + comparator1 + + " " + variable + " and " + variable + " " + + comparator2 + " " + value2 + " )"); + } + + j = j + 4; + } + } + + if (variablesBetweenDates != null) { + for (int k = 0; k < variablesBetweenDates.length; k++) { + if ((variablesBetweenDates[k] != null) && + (variablesBetweenDates[k + 1] != null) && + (variablesBetweenDates[k + 2] != null)) { + String variable = (String) variablesBetweenDates[k]; + Object object1 = variablesBetweenDates[k + 1]; + Object object2 = variablesBetweenDates[k + 2]; + String value = null; + String value2 = null; + + try { + Date date1 = (Date) object1; + Date date2 = (Date) object2; + value = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date1); + value2 = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date2); + } catch (Exception e) { + list = null; + throw e; + } + + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " between \'" + value + + "\' and \'" + value2 + "\')") + : (tempWhere + " AND (model." + variable + + " between \'" + value + "\' and \'" + value2 + "\')"); + } + + k = k + 2; + } + } + + if (tempWhere.length() == 0) { + where = null; + } else { + where = "(" + tempWhere + ")"; + } + + try { + list = JPADaoFactory.getInstance().getCpDetalleMovimientoDAO() + .findByCriteria(where); + } catch (Exception e) { + throw new Exception(e.getMessage()); + } finally { + } + + return list; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpGrupoMovimientoLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpGrupoMovimientoLogic.java new file mode 100644 index 0000000..cf63fce --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpGrupoMovimientoLogic.java @@ -0,0 +1,462 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.dataaccess.daoFactory.JPADaoFactory; +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpGrupoMovimientoDTO; +import org.zathura.cuentas.utilities.Utilities; + +import java.math.BigDecimal; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * interface CpGrupoMovimientoLogic + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpGrupoMovimientoLogic implements ICpGrupoMovimientoLogic { + public List getCpGrupoMovimiento() + throws Exception { + List list = new ArrayList(); + + try { + list = JPADaoFactory.getInstance().getCpGrupoMovimientoDAO() + .findAll(0); + } catch (Exception e) { + throw new ZMessManager().new GettingException(ZMessManager.ALL + + "CpGrupoMovimiento"); + } finally { + } + + return list; + } + + public void saveCpGrupoMovimiento(String descripcion, + Long idGrupoMovimiento, String observacion, + Long idTipoMovimiento_CpTipoMovimiento) throws Exception { + CpGrupoMovimiento entity = null; + + try { + if ((descripcion != null) && + (Utilities.checkWordAndCheckWithlength(descripcion, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "descripcion"); + } + + if (idGrupoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idGrupoMovimiento"); + } + + if ((idGrupoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idGrupoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idGrupoMovimiento"); + } + + if ((observacion != null) && + (Utilities.checkWordAndCheckWithlength(observacion, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observacion"); + } + + if (idTipoMovimiento_CpTipoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idTipoMovimiento_CpTipoMovimiento"); + } + + if ((idTipoMovimiento_CpTipoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idTipoMovimiento_CpTipoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idTipoMovimiento_CpTipoMovimiento"); + } + + ICpTipoMovimientoLogic logicCpTipoMovimiento1 = new CpTipoMovimientoLogic(); + CpTipoMovimiento cpTipoMovimientoClass = logicCpTipoMovimiento1.getCpTipoMovimiento(idTipoMovimiento_CpTipoMovimiento); + + if (cpTipoMovimientoClass == null) { + throw new ZMessManager().new ForeignException( + "cpTipoMovimiento"); + } + + entity = getCpGrupoMovimiento(idGrupoMovimiento); + + if (entity != null) { + throw new ZMessManager(ZMessManager.ENTITY_WITHSAMEKEY); + } + + entity = new CpGrupoMovimiento(); + entity.setDescripcion(descripcion); + entity.setIdGrupoMovimiento(idGrupoMovimiento); + entity.setObservacion(observacion); + entity.setCpTipoMovimiento(cpTipoMovimientoClass); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpGrupoMovimientoDAO().save(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void deleteCpGrupoMovimiento(Long idGrupoMovimiento) + throws Exception { + CpGrupoMovimiento entity = null; + + if (idGrupoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idGrupoMovimiento"); + } + + List cpMovimientos = null; + entity = getCpGrupoMovimiento(idGrupoMovimiento); + + if (entity == null) { + throw new ZMessManager().new EmptyFieldException( + "CpGrupoMovimiento"); + } + + try { + cpMovimientos = JPADaoFactory.getInstance().getCpMovimientoDAO() + .findByProperty("cpGrupoMovimiento.idGrupoMovimiento", + idGrupoMovimiento, 0); + + if (Utilities.validationsList(cpMovimientos) == true) { + throw new ZMessManager().new DeletingException("cpMovimientos"); + } + + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpGrupoMovimientoDAO().delete(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void updateCpGrupoMovimiento(String descripcion, + Long idGrupoMovimiento, String observacion, + Long idTipoMovimiento_CpTipoMovimiento) throws Exception { + CpGrupoMovimiento entity = null; + + try { + if ((descripcion != null) && + (Utilities.checkWordAndCheckWithlength(descripcion, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "descripcion"); + } + + if (idGrupoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idGrupoMovimiento"); + } + + if ((idGrupoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idGrupoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idGrupoMovimiento"); + } + + if ((observacion != null) && + (Utilities.checkWordAndCheckWithlength(observacion, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observacion"); + } + + if (idTipoMovimiento_CpTipoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idTipoMovimiento_CpTipoMovimiento"); + } + + if ((idTipoMovimiento_CpTipoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idTipoMovimiento_CpTipoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idTipoMovimiento_CpTipoMovimiento"); + } + + ICpTipoMovimientoLogic logicCpTipoMovimiento1 = new CpTipoMovimientoLogic(); + CpTipoMovimiento cpTipoMovimientoClass = logicCpTipoMovimiento1.getCpTipoMovimiento(idTipoMovimiento_CpTipoMovimiento); + + if (cpTipoMovimientoClass == null) { + throw new ZMessManager().new ForeignException( + "cpTipoMovimiento"); + } + + entity = getCpGrupoMovimiento(idGrupoMovimiento); + + if (entity == null) { + throw new ZMessManager(ZMessManager.ENTITY_NOENTITYTOUPDATE); + } + + entity.setDescripcion(descripcion); + entity.setIdGrupoMovimiento(idGrupoMovimiento); + entity.setObservacion(observacion); + entity.setCpTipoMovimiento(cpTipoMovimientoClass); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpGrupoMovimientoDAO().update(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public CpGrupoMovimiento getCpGrupoMovimiento(Long idGrupoMovimiento) + throws Exception { + CpGrupoMovimiento entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpGrupoMovimientoDAO() + .findById(idGrupoMovimiento); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpGrupoMovimiento"); + } finally { + } + + return entity; + } + + public List getDataCpGrupoMovimiento() + throws Exception { + try { + List cpGrupoMovimiento = JPADaoFactory.getInstance() + .getCpGrupoMovimientoDAO() + .findAll(0); + + List cpGrupoMovimientoDTO = new ArrayList(); + + for (CpGrupoMovimiento cpGrupoMovimientoTmp : cpGrupoMovimiento) { + CpGrupoMovimientoDTO cpGrupoMovimientoDTO2 = new CpGrupoMovimientoDTO(); + + cpGrupoMovimientoDTO2.setIdGrupoMovimiento(cpGrupoMovimientoTmp.getIdGrupoMovimiento()); + cpGrupoMovimientoDTO2.setDescripcion((cpGrupoMovimientoTmp.getDescripcion() != null) + ? cpGrupoMovimientoTmp.getDescripcion() : null); + cpGrupoMovimientoDTO2.setObservacion((cpGrupoMovimientoTmp.getObservacion() != null) + ? cpGrupoMovimientoTmp.getObservacion() : null); + cpGrupoMovimientoDTO2.setIdTipoMovimiento_CpTipoMovimiento((cpGrupoMovimientoTmp.getCpTipoMovimiento() + .getIdTipoMovimiento() != null) + ? cpGrupoMovimientoTmp.getCpTipoMovimiento() + .getIdTipoMovimiento() : null); + cpGrupoMovimientoDTO.add(cpGrupoMovimientoDTO2); + } + + return cpGrupoMovimientoDTO; + } catch (Exception e) { + throw e; + } + } + + public List findPageCpGrupoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception { + List entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpGrupoMovimientoDAO() + .findPageCpGrupoMovimiento(sortColumnName, + sortAscending, startRow, maxResults); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpGrupoMovimiento"); + } + + return entity; + } + + public Long findTotalNumberCpGrupoMovimiento() throws Exception { + Long entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpGrupoMovimientoDAO() + .findTotalNumberCpGrupoMovimiento(); + } catch (Exception e) { + throw new ZMessManager().new FindingException( + "CpGrupoMovimiento Count"); + } finally { + } + + return entity; + } + + /** + * + * @param varibles + * este arreglo debera tener: + * + * [0] = String variable = (String) varibles[i]; representa como se llama la + * variable en el pojo + * + * [1] = Boolean booVariable = (Boolean) varibles[i + 1]; representa si el + * valor necesita o no ''(comillas simples)usado para campos de tipo string + * + * [2] = Object value = varibles[i + 2]; representa el valor que se va a + * buscar en la BD + * + * [3] = String comparator = (String) varibles[i + 3]; representa que tipo + * de busqueda voy a hacer.., ejemplo: where nombre=william o where nombre<>william, + * en este campo iria el tipo de comparador que quiero si es = o <> + * + * Se itera de 4 en 4..., entonces 4 registros del arreglo representan 1 + * busqueda en un campo, si se ponen mas pues el continuara buscando en lo + * que se le ingresen en los otros 4 + * + * + * @param variablesBetween + * + * la diferencia son estas dos posiciones + * + * [0] = String variable = (String) varibles[j]; la variable ne la BD que va + * a ser buscada en un rango + * + * [1] = Object value = varibles[j + 1]; valor 1 para buscar en un rango + * + * [2] = Object value2 = varibles[j + 2]; valor 2 para buscar en un rango + * ejempolo: a > 1 and a < 5 --> 1 seria value y 5 seria value2 + * + * [3] = String comparator1 = (String) varibles[j + 3]; comparador 1 + * ejemplo: a comparator1 1 and a < 5 + * + * [4] = String comparator2 = (String) varibles[j + 4]; comparador 2 + * ejemplo: a comparador1>1 and a comparador2<5 (el original: a > 1 and a < + * 5) * + * @param variablesBetweenDates(en + * este caso solo para mysql) + * [0] = String variable = (String) varibles[k]; el nombre de la variable que hace referencia a + * una fecha + * + * [1] = Object object1 = varibles[k + 2]; fecha 1 a comparar(deben ser + * dates) + * + * [2] = Object object2 = varibles[k + 3]; fecha 2 a comparar(deben ser + * dates) + * + * esto hace un between entre las dos fechas. + * + * @return lista con los objetos que se necesiten + * @throws Exception + */ + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception { + List list = new ArrayList(); + String where = new String(); + String tempWhere = new String(); + + if (variables != null) { + for (int i = 0; i < variables.length; i++) { + if ((variables[i] != null) && (variables[i + 1] != null) && + (variables[i + 2] != null) && + (variables[i + 3] != null)) { + String variable = (String) variables[i]; + Boolean booVariable = (Boolean) variables[i + 1]; + Object value = variables[i + 2]; + String comparator = (String) variables[i + 3]; + + if (booVariable.booleanValue()) { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " \'" + + value + "\' )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " \'" + value + "\' )"); + } else { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " " + + value + " )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " " + value + " )"); + } + } + + i = i + 3; + } + } + + if (variablesBetween != null) { + for (int j = 0; j < variablesBetween.length; j++) { + if ((variablesBetween[j] != null) && + (variablesBetween[j + 1] != null) && + (variablesBetween[j + 2] != null) && + (variablesBetween[j + 3] != null) && + (variablesBetween[j + 4] != null)) { + String variable = (String) variablesBetween[j]; + Object value = variablesBetween[j + 1]; + Object value2 = variablesBetween[j + 2]; + String comparator1 = (String) variablesBetween[j + 3]; + String comparator2 = (String) variablesBetween[j + 4]; + tempWhere = (tempWhere.length() == 0) + ? ("(" + value + " " + comparator1 + " " + variable + + " and " + variable + " " + comparator2 + " " + value2 + + " )") + : (tempWhere + " AND (" + value + " " + comparator1 + + " " + variable + " and " + variable + " " + + comparator2 + " " + value2 + " )"); + } + + j = j + 4; + } + } + + if (variablesBetweenDates != null) { + for (int k = 0; k < variablesBetweenDates.length; k++) { + if ((variablesBetweenDates[k] != null) && + (variablesBetweenDates[k + 1] != null) && + (variablesBetweenDates[k + 2] != null)) { + String variable = (String) variablesBetweenDates[k]; + Object object1 = variablesBetweenDates[k + 1]; + Object object2 = variablesBetweenDates[k + 2]; + String value = null; + String value2 = null; + + try { + Date date1 = (Date) object1; + Date date2 = (Date) object2; + value = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date1); + value2 = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date2); + } catch (Exception e) { + list = null; + throw e; + } + + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " between \'" + value + + "\' and \'" + value2 + "\')") + : (tempWhere + " AND (model." + variable + + " between \'" + value + "\' and \'" + value2 + "\')"); + } + + k = k + 2; + } + } + + if (tempWhere.length() == 0) { + where = null; + } else { + where = "(" + tempWhere + ")"; + } + + try { + list = JPADaoFactory.getInstance().getCpGrupoMovimientoDAO() + .findByCriteria(where); + } catch (Exception e) { + throw new Exception(e.getMessage()); + } finally { + } + + return list; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpMovimientoLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpMovimientoLogic.java new file mode 100644 index 0000000..32a53ce --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpMovimientoLogic.java @@ -0,0 +1,600 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.dataaccess.daoFactory.JPADaoFactory; +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpMovimientoDTO; +import org.zathura.cuentas.utilities.Utilities; + +import java.math.BigDecimal; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; + +import javax.persistence.GeneratedValue; + + +/** + * interface CpMovimientoLogic + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpMovimientoLogic implements ICpMovimientoLogic { + public List getCpMovimiento() throws Exception { + List list = new ArrayList(); + + try { + list = JPADaoFactory.getInstance().getCpMovimientoDAO().findAll(0); + } catch (Exception e) { + throw new ZMessManager().new GettingException(ZMessManager.ALL + + "CpMovimiento"); + } finally { + } + + return list; + } + + public void saveCpMovimiento(String descripcionMovimiento, + Long idMovimiento, String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception { + CpMovimiento entity = null; + + try { + if ((descripcionMovimiento != null) && + (Utilities.checkWordAndCheckWithlength( + descripcionMovimiento, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "descripcionMovimiento"); + } + + if (idMovimiento == null) { + throw new ZMessManager().new EmptyFieldException("idMovimiento"); + } + + if ((idMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idMovimiento"); + } + + if ((observaciones != null) && + (Utilities.checkWordAndCheckWithlength(observaciones, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observaciones"); + } + + if (idGrupoMovimiento_CpGrupoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idGrupoMovimiento_CpGrupoMovimiento"); + } + + if ((idGrupoMovimiento_CpGrupoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idGrupoMovimiento_CpGrupoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idGrupoMovimiento_CpGrupoMovimiento"); + } + + if (idUsuario_CpUsuarios == null) { + throw new ZMessManager().new EmptyFieldException( + "idUsuario_CpUsuarios"); + } + + if ((idUsuario_CpUsuarios != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idUsuario_CpUsuarios, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idUsuario_CpUsuarios"); + } + + ICpGrupoMovimientoLogic logicCpGrupoMovimiento1 = new CpGrupoMovimientoLogic(); + ICpUsuariosLogic logicCpUsuarios2 = new CpUsuariosLogic(); + CpGrupoMovimiento cpGrupoMovimientoClass = logicCpGrupoMovimiento1.getCpGrupoMovimiento(idGrupoMovimiento_CpGrupoMovimiento); + CpUsuarios cpUsuariosClass = logicCpUsuarios2.getCpUsuarios(idUsuario_CpUsuarios); + + if (cpGrupoMovimientoClass == null) { + throw new ZMessManager().new ForeignException( + "cpGrupoMovimiento"); + } + + if (cpUsuariosClass == null) { + throw new ZMessManager().new ForeignException("cpUsuarios"); + } + + entity = getCpMovimiento(idMovimiento); + + if (entity != null) { + throw new ZMessManager(ZMessManager.ENTITY_WITHSAMEKEY); + } + + entity = new CpMovimiento(); + entity.setDescripcionMovimiento(descripcionMovimiento); + entity.setIdMovimiento(idMovimiento); + entity.setObservaciones(observaciones); + entity.setCpGrupoMovimiento(cpGrupoMovimientoClass); + entity.setCpUsuarios(cpUsuariosClass); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpMovimientoDAO().save(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + /** + * Metodo que Ingresa un movimiento y el id se autogenera por medio de una la anotation @GeneratedValue(generator = "movimintoIdSec") + * que llama una secuencia de base dedatos (cuando es BD oracle) , no se necesita igresar un id . + * @param descripcionMovimiento + * @param observaciones + * @param idGrupoMovimiento_CpGrupoMovimiento + * @param idUsuario_CpUsuarios + * @throws Exception + */ + public void saveCpMovimientoWithoutId(String descripcionMovimiento, + String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception { + CpMovimiento entity = null; + + try { + if ((descripcionMovimiento != null) && + (Utilities.checkWordAndCheckWithlength( + descripcionMovimiento, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "descripcionMovimiento"); + } + + + if ((observaciones != null) && + (Utilities.checkWordAndCheckWithlength(observaciones, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observaciones"); + } + + if (idGrupoMovimiento_CpGrupoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idGrupoMovimiento_CpGrupoMovimiento"); + } + + if ((idGrupoMovimiento_CpGrupoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idGrupoMovimiento_CpGrupoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idGrupoMovimiento_CpGrupoMovimiento"); + } + + if (idUsuario_CpUsuarios == null) { + throw new ZMessManager().new EmptyFieldException( + "idUsuario_CpUsuarios"); + } + + if ((idUsuario_CpUsuarios != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idUsuario_CpUsuarios, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idUsuario_CpUsuarios"); + } + + ICpGrupoMovimientoLogic logicCpGrupoMovimiento1 = new CpGrupoMovimientoLogic(); + ICpUsuariosLogic logicCpUsuarios2 = new CpUsuariosLogic(); + CpGrupoMovimiento cpGrupoMovimientoClass = logicCpGrupoMovimiento1.getCpGrupoMovimiento(idGrupoMovimiento_CpGrupoMovimiento); + CpUsuarios cpUsuariosClass = logicCpUsuarios2.getCpUsuarios(idUsuario_CpUsuarios); + + if (cpGrupoMovimientoClass == null) { + throw new ZMessManager().new ForeignException( + "cpGrupoMovimiento"); + } + + if (cpUsuariosClass == null) { + throw new ZMessManager().new ForeignException("cpUsuarios"); + } + + // entity = getCpMovimiento(idMovimiento); + + // if (entity != null) { + // throw new ZMessManager(ZMessManager.ENTITY_WITHSAMEKEY); + // } + + entity = new CpMovimiento(); + entity.setDescripcionMovimiento(descripcionMovimiento); + entity.setObservaciones(observaciones); + entity.setCpGrupoMovimiento(cpGrupoMovimientoClass); + entity.setCpUsuarios(cpUsuariosClass); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpMovimientoDAO().save(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void deleteCpMovimiento(Long idMovimiento) throws Exception { + CpMovimiento entity = null; + + if (idMovimiento == null) { + throw new ZMessManager().new EmptyFieldException("idMovimiento"); + } + + List cpDetalleMovimientos = null; + entity = getCpMovimiento(idMovimiento); + + if (entity == null) { + throw new ZMessManager().new EmptyFieldException("CpMovimiento"); + } + + try { + cpDetalleMovimientos = JPADaoFactory.getInstance() + .getCpDetalleMovimientoDAO() + .findByProperty("cpMovimiento.idMovimiento", + idMovimiento, 0); + + if (Utilities.validationsList(cpDetalleMovimientos) == true) { + throw new ZMessManager().new DeletingException( + "cpDetalleMovimientos"); + } + + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpMovimientoDAO().delete(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void updateCpMovimiento(String descripcionMovimiento, + Long idMovimiento, String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception { + CpMovimiento entity = null; + + try { + if ((descripcionMovimiento != null) && + (Utilities.checkWordAndCheckWithlength( + descripcionMovimiento, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "descripcionMovimiento"); + } + + if (idMovimiento == null) { + throw new ZMessManager().new EmptyFieldException("idMovimiento"); + } + + if ((idMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idMovimiento"); + } + + if ((observaciones != null) && + (Utilities.checkWordAndCheckWithlength(observaciones, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observaciones"); + } + + if (idGrupoMovimiento_CpGrupoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idGrupoMovimiento_CpGrupoMovimiento"); + } + + if ((idGrupoMovimiento_CpGrupoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idGrupoMovimiento_CpGrupoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idGrupoMovimiento_CpGrupoMovimiento"); + } + + if (idUsuario_CpUsuarios == null) { + throw new ZMessManager().new EmptyFieldException( + "idUsuario_CpUsuarios"); + } + + if ((idUsuario_CpUsuarios != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idUsuario_CpUsuarios, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idUsuario_CpUsuarios"); + } + + ICpGrupoMovimientoLogic logicCpGrupoMovimiento1 = new CpGrupoMovimientoLogic(); + + ICpUsuariosLogic logicCpUsuarios2 = new CpUsuariosLogic(); + CpGrupoMovimiento cpGrupoMovimientoClass = logicCpGrupoMovimiento1.getCpGrupoMovimiento(idGrupoMovimiento_CpGrupoMovimiento); + CpUsuarios cpUsuariosClass = logicCpUsuarios2.getCpUsuarios(idUsuario_CpUsuarios); + + if (cpGrupoMovimientoClass == null) { + throw new ZMessManager().new ForeignException( + "cpGrupoMovimiento"); + } + + if (cpUsuariosClass == null) { + throw new ZMessManager().new ForeignException("cpUsuarios"); + } + + entity = getCpMovimiento(idMovimiento); + + if (entity == null) { + throw new ZMessManager(ZMessManager.ENTITY_NOENTITYTOUPDATE); + } + + entity.setDescripcionMovimiento(descripcionMovimiento); + entity.setIdMovimiento(idMovimiento); + entity.setObservaciones(observaciones); + entity.setCpGrupoMovimiento(cpGrupoMovimientoClass); + entity.setCpUsuarios(cpUsuariosClass); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpMovimientoDAO().update(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public CpMovimiento getCpMovimiento(Long idMovimiento) + throws Exception { + CpMovimiento entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpMovimientoDAO() + .findById(idMovimiento); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpMovimiento"); + } finally { + } + + return entity; + } + + public List getDataCpMovimiento() + throws Exception { + try { + List cpMovimiento = JPADaoFactory.getInstance() + .getCpMovimientoDAO() + .findAll(0); + + + List cpMovimientoDTO = new ArrayList(); + + for (CpMovimiento cpMovimientoTmp : cpMovimiento) { + CpMovimientoDTO cpMovimientoDTO2 = new CpMovimientoDTO(); + + cpMovimientoDTO2.setIdMovimiento(cpMovimientoTmp.getIdMovimiento()); + cpMovimientoDTO2.setDescripcionMovimiento((cpMovimientoTmp.getDescripcionMovimiento() != null) + ? cpMovimientoTmp.getDescripcionMovimiento() : null); + cpMovimientoDTO2.setObservaciones((cpMovimientoTmp.getObservaciones() != null) + ? cpMovimientoTmp.getObservaciones() : null); + cpMovimientoDTO2.setIdGrupoMovimiento_CpGrupoMovimiento((cpMovimientoTmp.getCpGrupoMovimiento() + .getIdGrupoMovimiento() != null) + ? cpMovimientoTmp.getCpGrupoMovimiento() + .getIdGrupoMovimiento() : null); + cpMovimientoDTO2.setIdUsuario_CpUsuarios((cpMovimientoTmp.getCpUsuarios() + .getIdUsuario() != null) + ? cpMovimientoTmp.getCpUsuarios().getIdUsuario() : null); + if((cpMovimientoTmp.getCpGrupoMovimiento() + .getIdGrupoMovimiento() != null)){ + CpGrupoMovimiento cpGrupoMovimiento = JPADaoFactory.getInstance().getCpGrupoMovimientoDAO().findById(cpMovimientoTmp.getCpGrupoMovimiento() + .getIdGrupoMovimiento()); + cpMovimientoDTO2.setDescripcionGrupo(cpGrupoMovimiento.getDescripcion()); + } + cpMovimientoDTO.add(cpMovimientoDTO2); + } + + return cpMovimientoDTO; + } catch (Exception e) { + throw e; + } + } + + public List findPageCpMovimiento(String sortColumnName, + boolean sortAscending, int startRow, int maxResults) + throws Exception { + List entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpMovimientoDAO() + .findPageCpMovimiento(sortColumnName, + sortAscending, startRow, maxResults); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpMovimiento"); + } + + return entity; + } + + public Long findTotalNumberCpMovimiento() throws Exception { + Long entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpMovimientoDAO() + .findTotalNumberCpMovimiento(); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpMovimiento Count"); + } finally { + } + + return entity; + } + + /** + * + * @param varibles + * este arreglo debera tener: + * + * [0] = String variable = (String) varibles[i]; representa como se llama la + * variable en el pojo + * + * [1] = Boolean booVariable = (Boolean) varibles[i + 1]; representa si el + * valor necesita o no ''(comillas simples)usado para campos de tipo string + * + * [2] = Object value = varibles[i + 2]; representa el valor que se va a + * buscar en la BD + * + * [3] = String comparator = (String) varibles[i + 3]; representa que tipo + * de busqueda voy a hacer.., ejemplo: where nombre=william o where nombre<>william, + * en este campo iria el tipo de comparador que quiero si es = o <> + * + * Se itera de 4 en 4..., entonces 4 registros del arreglo representan 1 + * busqueda en un campo, si se ponen mas pues el continuara buscando en lo + * que se le ingresen en los otros 4 + * + * + * @param variablesBetween + * + * la diferencia son estas dos posiciones + * + * [0] = String variable = (String) varibles[j]; la variable ne la BD que va + * a ser buscada en un rango + * + * [1] = Object value = varibles[j + 1]; valor 1 para buscar en un rango + * + * [2] = Object value2 = varibles[j + 2]; valor 2 para buscar en un rango + * ejempolo: a > 1 and a < 5 --> 1 seria value y 5 seria value2 + * + * [3] = String comparator1 = (String) varibles[j + 3]; comparador 1 + * ejemplo: a comparator1 1 and a < 5 + * + * [4] = String comparator2 = (String) varibles[j + 4]; comparador 2 + * ejemplo: a comparador1>1 and a comparador2<5 (el original: a > 1 and a < + * 5) * + * @param variablesBetweenDates(en + * este caso solo para mysql) + * [0] = String variable = (String) varibles[k]; el nombre de la variable que hace referencia a + * una fecha + * + * [1] = Object object1 = varibles[k + 2]; fecha 1 a comparar(deben ser + * dates) + * + * [2] = Object object2 = varibles[k + 3]; fecha 2 a comparar(deben ser + * dates) + * + * esto hace un between entre las dos fechas. + * + * @return lista con los objetos que se necesiten + * @throws Exception + */ + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception { + List list = new ArrayList(); + String where = new String(); + String tempWhere = new String(); + + if (variables != null) { + for (int i = 0; i < variables.length; i++) { + if ((variables[i] != null) && (variables[i + 1] != null) && + (variables[i + 2] != null) && + (variables[i + 3] != null)) { + String variable = (String) variables[i]; + Boolean booVariable = (Boolean) variables[i + 1]; + Object value = variables[i + 2]; + String comparator = (String) variables[i + 3]; + + if (booVariable.booleanValue()) { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " \'" + + value + "\' )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " \'" + value + "\' )"); + } else { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " " + + value + " )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " " + value + " )"); + } + } + + i = i + 3; + } + } + + if (variablesBetween != null) { + for (int j = 0; j < variablesBetween.length; j++) { + if ((variablesBetween[j] != null) && + (variablesBetween[j + 1] != null) && + (variablesBetween[j + 2] != null) && + (variablesBetween[j + 3] != null) && + (variablesBetween[j + 4] != null)) { + String variable = (String) variablesBetween[j]; + Object value = variablesBetween[j + 1]; + Object value2 = variablesBetween[j + 2]; + String comparator1 = (String) variablesBetween[j + 3]; + String comparator2 = (String) variablesBetween[j + 4]; + tempWhere = (tempWhere.length() == 0) + ? ("(" + value + " " + comparator1 + " " + variable + + " and " + variable + " " + comparator2 + " " + value2 + + " )") + : (tempWhere + " AND (" + value + " " + comparator1 + + " " + variable + " and " + variable + " " + + comparator2 + " " + value2 + " )"); + } + + j = j + 4; + } + } + + if (variablesBetweenDates != null) { + for (int k = 0; k < variablesBetweenDates.length; k++) { + if ((variablesBetweenDates[k] != null) && + (variablesBetweenDates[k + 1] != null) && + (variablesBetweenDates[k + 2] != null)) { + String variable = (String) variablesBetweenDates[k]; + Object object1 = variablesBetweenDates[k + 1]; + Object object2 = variablesBetweenDates[k + 2]; + String value = null; + String value2 = null; + + try { + Date date1 = (Date) object1; + Date date2 = (Date) object2; + value = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date1); + value2 = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date2); + } catch (Exception e) { + list = null; + throw e; + } + + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " between \'" + value + + "\' and \'" + value2 + "\')") + : (tempWhere + " AND (model." + variable + + " between \'" + value + "\' and \'" + value2 + "\')"); + } + + k = k + 2; + } + } + + if (tempWhere.length() == 0) { + where = null; + } else { + where = "(" + tempWhere + ")"; + } + + try { + list = JPADaoFactory.getInstance().getCpMovimientoDAO() + .findByCriteria(where); + } catch (Exception e) { + throw new Exception(e.getMessage()); + } finally { + } + + return list; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpTipoMovimientoLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpTipoMovimientoLogic.java new file mode 100644 index 0000000..13c24e9 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpTipoMovimientoLogic.java @@ -0,0 +1,414 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.dataaccess.daoFactory.JPADaoFactory; +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpTipoMovimientoDTO; +import org.zathura.cuentas.utilities.Utilities; + +import java.math.BigDecimal; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * interface CpTipoMovimientoLogic + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpTipoMovimientoLogic implements ICpTipoMovimientoLogic { + public List getCpTipoMovimiento() + throws Exception { + List list = new ArrayList(); + + try { + list = JPADaoFactory.getInstance().getCpTipoMovimientoDAO() + .findAll(0); + } catch (Exception e) { + throw new ZMessManager().new GettingException(ZMessManager.ALL + + "CpTipoMovimiento"); + } finally { + } + + return list; + } + + public void saveCpTipoMovimiento(String descripcion, Long idTipoMovimiento, + String observacion) throws Exception { + CpTipoMovimiento entity = null; + + try { + if ((descripcion != null) && + (Utilities.checkWordAndCheckWithlength(descripcion, 30) == false)) { + throw new ZMessManager().new NotValidFormatException( + "descripcion"); + } + + if (idTipoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idTipoMovimiento"); + } + + if ((idTipoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idTipoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idTipoMovimiento"); + } + + if ((observacion != null) && + (Utilities.checkWordAndCheckWithlength(observacion, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observacion"); + } + + entity = getCpTipoMovimiento(idTipoMovimiento); + + if (entity != null) { + throw new ZMessManager(ZMessManager.ENTITY_WITHSAMEKEY); + } + + entity = new CpTipoMovimiento(); + entity.setDescripcion(descripcion); + entity.setIdTipoMovimiento(idTipoMovimiento); + entity.setObservacion(observacion); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpTipoMovimientoDAO().save(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void deleteCpTipoMovimiento(Long idTipoMovimiento) + throws Exception { + CpTipoMovimiento entity = null; + + if (idTipoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException("idTipoMovimiento"); + } + + List cpGrupoMovimientos = null; + entity = getCpTipoMovimiento(idTipoMovimiento); + + if (entity == null) { + throw new ZMessManager().new EmptyFieldException("CpTipoMovimiento"); + } + + try { + cpGrupoMovimientos = JPADaoFactory.getInstance() + .getCpGrupoMovimientoDAO() + .findByProperty("cpTipoMovimiento.idTipoMovimiento", + idTipoMovimiento, 0); + + if (Utilities.validationsList(cpGrupoMovimientos) == true) { + throw new ZMessManager().new DeletingException( + "cpGrupoMovimientos"); + } + + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpTipoMovimientoDAO().delete(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void updateCpTipoMovimiento(String descripcion, + Long idTipoMovimiento, String observacion) throws Exception { + CpTipoMovimiento entity = null; + + try { + if ((descripcion != null) && + (Utilities.checkWordAndCheckWithlength(descripcion, 30) == false)) { + throw new ZMessManager().new NotValidFormatException( + "descripcion"); + } + + if (idTipoMovimiento == null) { + throw new ZMessManager().new EmptyFieldException( + "idTipoMovimiento"); + } + + if ((idTipoMovimiento != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idTipoMovimiento, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idTipoMovimiento"); + } + + if ((observacion != null) && + (Utilities.checkWordAndCheckWithlength(observacion, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observacion"); + } + + entity = getCpTipoMovimiento(idTipoMovimiento); + + if (entity == null) { + throw new ZMessManager(ZMessManager.ENTITY_NOENTITYTOUPDATE); + } + + entity.setDescripcion(descripcion); + entity.setIdTipoMovimiento(idTipoMovimiento); + entity.setObservacion(observacion); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpTipoMovimientoDAO().update(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public CpTipoMovimiento getCpTipoMovimiento(Long idTipoMovimiento) + throws Exception { + CpTipoMovimiento entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpTipoMovimientoDAO() + .findById(idTipoMovimiento); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpTipoMovimiento"); + } finally { + } + + return entity; + } + + public List getDataCpTipoMovimiento() + throws Exception { + try { + List cpTipoMovimiento = JPADaoFactory.getInstance() + .getCpTipoMovimientoDAO() + .findAll(0); + + List cpTipoMovimientoDTO = new ArrayList(); + + for (CpTipoMovimiento cpTipoMovimientoTmp : cpTipoMovimiento) { + CpTipoMovimientoDTO cpTipoMovimientoDTO2 = new CpTipoMovimientoDTO(); + + cpTipoMovimientoDTO2.setIdTipoMovimiento(cpTipoMovimientoTmp.getIdTipoMovimiento()); + cpTipoMovimientoDTO2.setDescripcion((cpTipoMovimientoTmp.getDescripcion() != null) + ? cpTipoMovimientoTmp.getDescripcion() : null); + cpTipoMovimientoDTO2.setObservacion((cpTipoMovimientoTmp.getObservacion() != null) + ? cpTipoMovimientoTmp.getObservacion() : null); + cpTipoMovimientoDTO.add(cpTipoMovimientoDTO2); + } + + return cpTipoMovimientoDTO; + } catch (Exception e) { + throw e; + } + } + + public List findPageCpTipoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception { + List entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpTipoMovimientoDAO() + .findPageCpTipoMovimiento(sortColumnName, + sortAscending, startRow, maxResults); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpTipoMovimiento"); + } + + return entity; + } + + public Long findTotalNumberCpTipoMovimiento() throws Exception { + Long entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpTipoMovimientoDAO() + .findTotalNumberCpTipoMovimiento(); + } catch (Exception e) { + throw new ZMessManager().new FindingException( + "CpTipoMovimiento Count"); + } finally { + } + + return entity; + } + + /** + * + * @param varibles + * este arreglo debera tener: + * + * [0] = String variable = (String) varibles[i]; representa como se llama la + * variable en el pojo + * + * [1] = Boolean booVariable = (Boolean) varibles[i + 1]; representa si el + * valor necesita o no ''(comillas simples)usado para campos de tipo string + * + * [2] = Object value = varibles[i + 2]; representa el valor que se va a + * buscar en la BD + * + * [3] = String comparator = (String) varibles[i + 3]; representa que tipo + * de busqueda voy a hacer.., ejemplo: where nombre=william o where nombre<>william, + * en este campo iria el tipo de comparador que quiero si es = o <> + * + * Se itera de 4 en 4..., entonces 4 registros del arreglo representan 1 + * busqueda en un campo, si se ponen mas pues el continuara buscando en lo + * que se le ingresen en los otros 4 + * + * + * @param variablesBetween + * + * la diferencia son estas dos posiciones + * + * [0] = String variable = (String) varibles[j]; la variable ne la BD que va + * a ser buscada en un rango + * + * [1] = Object value = varibles[j + 1]; valor 1 para buscar en un rango + * + * [2] = Object value2 = varibles[j + 2]; valor 2 para buscar en un rango + * ejempolo: a > 1 and a < 5 --> 1 seria value y 5 seria value2 + * + * [3] = String comparator1 = (String) varibles[j + 3]; comparador 1 + * ejemplo: a comparator1 1 and a < 5 + * + * [4] = String comparator2 = (String) varibles[j + 4]; comparador 2 + * ejemplo: a comparador1>1 and a comparador2<5 (el original: a > 1 and a < + * 5) * + * @param variablesBetweenDates(en + * este caso solo para mysql) + * [0] = String variable = (String) varibles[k]; el nombre de la variable que hace referencia a + * una fecha + * + * [1] = Object object1 = varibles[k + 2]; fecha 1 a comparar(deben ser + * dates) + * + * [2] = Object object2 = varibles[k + 3]; fecha 2 a comparar(deben ser + * dates) + * + * esto hace un between entre las dos fechas. + * + * @return lista con los objetos que se necesiten + * @throws Exception + */ + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception { + List list = new ArrayList(); + String where = new String(); + String tempWhere = new String(); + + if (variables != null) { + for (int i = 0; i < variables.length; i++) { + if ((variables[i] != null) && (variables[i + 1] != null) && + (variables[i + 2] != null) && + (variables[i + 3] != null)) { + String variable = (String) variables[i]; + Boolean booVariable = (Boolean) variables[i + 1]; + Object value = variables[i + 2]; + String comparator = (String) variables[i + 3]; + + if (booVariable.booleanValue()) { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " \'" + + value + "\' )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " \'" + value + "\' )"); + } else { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " " + + value + " )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " " + value + " )"); + } + } + + i = i + 3; + } + } + + if (variablesBetween != null) { + for (int j = 0; j < variablesBetween.length; j++) { + if ((variablesBetween[j] != null) && + (variablesBetween[j + 1] != null) && + (variablesBetween[j + 2] != null) && + (variablesBetween[j + 3] != null) && + (variablesBetween[j + 4] != null)) { + String variable = (String) variablesBetween[j]; + Object value = variablesBetween[j + 1]; + Object value2 = variablesBetween[j + 2]; + String comparator1 = (String) variablesBetween[j + 3]; + String comparator2 = (String) variablesBetween[j + 4]; + tempWhere = (tempWhere.length() == 0) + ? ("(" + value + " " + comparator1 + " " + variable + + " and " + variable + " " + comparator2 + " " + value2 + + " )") + : (tempWhere + " AND (" + value + " " + comparator1 + + " " + variable + " and " + variable + " " + + comparator2 + " " + value2 + " )"); + } + + j = j + 4; + } + } + + if (variablesBetweenDates != null) { + for (int k = 0; k < variablesBetweenDates.length; k++) { + if ((variablesBetweenDates[k] != null) && + (variablesBetweenDates[k + 1] != null) && + (variablesBetweenDates[k + 2] != null)) { + String variable = (String) variablesBetweenDates[k]; + Object object1 = variablesBetweenDates[k + 1]; + Object object2 = variablesBetweenDates[k + 2]; + String value = null; + String value2 = null; + + try { + Date date1 = (Date) object1; + Date date2 = (Date) object2; + value = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date1); + value2 = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date2); + } catch (Exception e) { + list = null; + throw e; + } + + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " between \'" + value + + "\' and \'" + value2 + "\')") + : (tempWhere + " AND (model." + variable + + " between \'" + value + "\' and \'" + value2 + "\')"); + } + + k = k + 2; + } + } + + if (tempWhere.length() == 0) { + where = null; + } else { + where = "(" + tempWhere + ")"; + } + + try { + list = JPADaoFactory.getInstance().getCpTipoMovimientoDAO() + .findByCriteria(where); + } catch (Exception e) { + throw new Exception(e.getMessage()); + } finally { + } + + return list; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpUsuariosLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpUsuariosLogic.java new file mode 100644 index 0000000..4b73d27 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/CpUsuariosLogic.java @@ -0,0 +1,478 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.dataaccess.daoFactory.JPADaoFactory; +import org.zathura.cuentas.dataaccess.entityManager.EntityManagerHelper; +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpUsuariosDTO; +import org.zathura.cuentas.utilities.Utilities; + +import java.math.BigDecimal; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * interface CpUsuariosLogic + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpUsuariosLogic implements ICpUsuariosLogic { + public List getCpUsuarios() throws Exception { + List list = new ArrayList(); + + try { + list = JPADaoFactory.getInstance().getCpUsuariosDAO().findAll(0); + } catch (Exception e) { + throw new ZMessManager().new GettingException(ZMessManager.ALL + + "CpUsuarios"); + } finally { + } + + return list; + } + + public void saveCpUsuarios(String activo, String apellido, + String contrasena, String correo, Long idUsuario, Long movil, + String nombre, String observaciones) throws Exception { + CpUsuarios entity = null; + + try { + if ((activo != null) && + (Utilities.checkWordAndCheckWithlength(activo, 1) == false)) { + throw new ZMessManager().new NotValidFormatException("activo"); + } + + if ((apellido != null) && + (Utilities.checkWordAndCheckWithlength(apellido, 50) == false)) { + throw new ZMessManager().new NotValidFormatException("apellido"); + } + + if ((contrasena != null) && + (Utilities.checkWordAndCheckWithlength(contrasena, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "contrasena"); + } + + if ((correo != null) && + (Utilities.checkWordAndCheckWithlength(correo, 50) == false)) { + throw new ZMessManager().new NotValidFormatException("correo"); + } + + if (idUsuario == null) { + throw new ZMessManager().new EmptyFieldException("idUsuario"); + } + + if ((idUsuario != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idUsuario, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idUsuario"); + } + + if ((movil != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + movil, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException("movil"); + } + + if ((nombre != null) && + (Utilities.checkWordAndCheckWithlength(nombre, 50) == false)) { + throw new ZMessManager().new NotValidFormatException("nombre"); + } + + if ((observaciones != null) && + (Utilities.checkWordAndCheckWithlength(observaciones, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observaciones"); + } + + entity = getCpUsuarios(idUsuario); + + if (entity != null) { + throw new ZMessManager(ZMessManager.ENTITY_WITHSAMEKEY); + } + + entity = new CpUsuarios(); + entity.setActivo(activo); + entity.setApellido(apellido); + entity.setContrasena(contrasena); + entity.setCorreo(correo); + entity.setIdUsuario(idUsuario); + entity.setMovil(movil); + entity.setNombre(nombre); + entity.setObservaciones(observaciones); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpUsuariosDAO().save(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void deleteCpUsuarios(Long idUsuario) throws Exception { + CpUsuarios entity = null; + + if (idUsuario == null) { + throw new ZMessManager().new EmptyFieldException("idUsuario"); + } + + List cpMovimientos = null; + entity = getCpUsuarios(idUsuario); + + if (entity == null) { + throw new ZMessManager().new EmptyFieldException("CpUsuarios"); + } + + try { + cpMovimientos = JPADaoFactory.getInstance().getCpMovimientoDAO() + .findByProperty("cpUsuarios.idUsuario", + idUsuario, 0); + + if (Utilities.validationsList(cpMovimientos) == true) { + throw new ZMessManager().new DeletingException("cpMovimientos"); + } + + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpUsuariosDAO().delete(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public void updateCpUsuarios(String activo, String apellido, + String contrasena, String correo, Long idUsuario, Long movil, + String nombre, String observaciones) throws Exception { + CpUsuarios entity = null; + + try { + if ((activo != null) && + (Utilities.checkWordAndCheckWithlength(activo, 1) == false)) { + throw new ZMessManager().new NotValidFormatException("activo"); + } + + if ((apellido != null) && + (Utilities.checkWordAndCheckWithlength(apellido, 50) == false)) { + throw new ZMessManager().new NotValidFormatException("apellido"); + } + + if ((contrasena != null) && + (Utilities.checkWordAndCheckWithlength(contrasena, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "contrasena"); + } + + if ((correo != null) && + (Utilities.checkWordAndCheckWithlength(correo, 50) == false)) { + throw new ZMessManager().new NotValidFormatException("correo"); + } + + if (idUsuario == null) { + throw new ZMessManager().new EmptyFieldException("idUsuario"); + } + + if ((idUsuario != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + idUsuario, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException( + "idUsuario"); + } + + if ((movil != null) && + (Utilities.checkNumberAndCheckWithPrecisionAndScale("" + + movil, 22, 0) == false)) { + throw new ZMessManager().new NotValidFormatException("movil"); + } + + if ((nombre != null) && + (Utilities.checkWordAndCheckWithlength(nombre, 50) == false)) { + throw new ZMessManager().new NotValidFormatException("nombre"); + } + + if ((observaciones != null) && + (Utilities.checkWordAndCheckWithlength(observaciones, 50) == false)) { + throw new ZMessManager().new NotValidFormatException( + "observaciones"); + } + + entity = getCpUsuarios(idUsuario); + + if (entity == null) { + throw new ZMessManager(ZMessManager.ENTITY_NOENTITYTOUPDATE); + } + + entity.setActivo(activo); + entity.setApellido(apellido); + entity.setContrasena(contrasena); + entity.setCorreo(correo); + entity.setIdUsuario(idUsuario); + entity.setMovil(movil); + entity.setNombre(nombre); + entity.setObservaciones(observaciones); + EntityManagerHelper.beginTransaction(); + JPADaoFactory.getInstance().getCpUsuariosDAO().update(entity); + EntityManagerHelper.commit(); + } catch (Exception e) { + EntityManagerHelper.rollback(); + throw e; + } finally { + EntityManagerHelper.closeEntityManager(); + } + } + + public CpUsuarios getCpUsuarios(Long idUsuario) throws Exception { + CpUsuarios entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpUsuariosDAO() + .findById(idUsuario); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpUsuarios"); + } finally { + } + + return entity; + } + + public List getDataCpUsuarios() throws Exception { + try { + List cpUsuarios = JPADaoFactory.getInstance() + .getCpUsuariosDAO() + .findAll(0); + + List cpUsuariosDTO = new ArrayList(); + + for (CpUsuarios cpUsuariosTmp : cpUsuarios) { + CpUsuariosDTO cpUsuariosDTO2 = new CpUsuariosDTO(); + + cpUsuariosDTO2.setIdUsuario(cpUsuariosTmp.getIdUsuario()); + cpUsuariosDTO2.setActivo((cpUsuariosTmp.getActivo() != null) + ? cpUsuariosTmp.getActivo() : null); + cpUsuariosDTO2.setApellido((cpUsuariosTmp.getApellido() != null) + ? cpUsuariosTmp.getApellido() : null); + cpUsuariosDTO2.setContrasena((cpUsuariosTmp.getContrasena() != null) + ? cpUsuariosTmp.getContrasena() : null); + cpUsuariosDTO2.setCorreo((cpUsuariosTmp.getCorreo() != null) + ? cpUsuariosTmp.getCorreo() : null); + cpUsuariosDTO2.setMovil((cpUsuariosTmp.getMovil() != null) + ? cpUsuariosTmp.getMovil() : null); + cpUsuariosDTO2.setNombre((cpUsuariosTmp.getNombre() != null) + ? cpUsuariosTmp.getNombre() : null); + cpUsuariosDTO2.setObservaciones((cpUsuariosTmp.getObservaciones() != null) + ? cpUsuariosTmp.getObservaciones() : null); + cpUsuariosDTO.add(cpUsuariosDTO2); + } + + return cpUsuariosDTO; + } catch (Exception e) { + throw e; + } + } + + public List findPageCpUsuarios(String sortColumnName, + boolean sortAscending, int startRow, int maxResults) + throws Exception { + List entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpUsuariosDAO() + .findPageCpUsuarios(sortColumnName, + sortAscending, startRow, maxResults); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpUsuarios"); + } + + return entity; + } + + public Long findTotalNumberCpUsuarios() throws Exception { + Long entity = null; + + try { + entity = JPADaoFactory.getInstance().getCpUsuariosDAO() + .findTotalNumberCpUsuarios(); + } catch (Exception e) { + throw new ZMessManager().new FindingException("CpUsuarios Count"); + } finally { + } + + return entity; + } + + /** + * + * @param varibles + * este arreglo debera tener: + * + * [0] = String variable = (String) varibles[i]; representa como se llama la + * variable en el pojo + * + * [1] = Boolean booVariable = (Boolean) varibles[i + 1]; representa si el + * valor necesita o no ''(comillas simples)usado para campos de tipo string + * + * [2] = Object value = varibles[i + 2]; representa el valor que se va a + * buscar en la BD + * + * [3] = String comparator = (String) varibles[i + 3]; representa que tipo + * de busqueda voy a hacer.., ejemplo: where nombre=william o where nombre<>william, + * en este campo iria el tipo de comparador que quiero si es = o <> + * + * Se itera de 4 en 4..., entonces 4 registros del arreglo representan 1 + * busqueda en un campo, si se ponen mas pues el continuara buscando en lo + * que se le ingresen en los otros 4 + * + * + * @param variablesBetween + * + * la diferencia son estas dos posiciones + * + * [0] = String variable = (String) varibles[j]; la variable ne la BD que va + * a ser buscada en un rango + * + * [1] = Object value = varibles[j + 1]; valor 1 para buscar en un rango + * + * [2] = Object value2 = varibles[j + 2]; valor 2 para buscar en un rango + * ejempolo: a > 1 and a < 5 --> 1 seria value y 5 seria value2 + * + * [3] = String comparator1 = (String) varibles[j + 3]; comparador 1 + * ejemplo: a comparator1 1 and a < 5 + * + * [4] = String comparator2 = (String) varibles[j + 4]; comparador 2 + * ejemplo: a comparador1>1 and a comparador2<5 (el original: a > 1 and a < + * 5) * + * @param variablesBetweenDates(en + * este caso solo para mysql) + * [0] = String variable = (String) varibles[k]; el nombre de la variable que hace referencia a + * una fecha + * + * [1] = Object object1 = varibles[k + 2]; fecha 1 a comparar(deben ser + * dates) + * + * [2] = Object object2 = varibles[k + 3]; fecha 2 a comparar(deben ser + * dates) + * + * esto hace un between entre las dos fechas. + * + * @return lista con los objetos que se necesiten + * @throws Exception + */ + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception { + List list = new ArrayList(); + String where = new String(); + String tempWhere = new String(); + + if (variables != null) { + for (int i = 0; i < variables.length; i++) { + if ((variables[i] != null) && (variables[i + 1] != null) && + (variables[i + 2] != null) && + (variables[i + 3] != null)) { + String variable = (String) variables[i]; + Boolean booVariable = (Boolean) variables[i + 1]; + Object value = variables[i + 2]; + String comparator = (String) variables[i + 3]; + + if (booVariable.booleanValue()) { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " \'" + + value + "\' )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " \'" + value + "\' )"); + } else { + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " " + comparator + " " + + value + " )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " " + value + " )"); + } + } + + i = i + 3; + } + } + + if (variablesBetween != null) { + for (int j = 0; j < variablesBetween.length; j++) { + if ((variablesBetween[j] != null) && + (variablesBetween[j + 1] != null) && + (variablesBetween[j + 2] != null) && + (variablesBetween[j + 3] != null) && + (variablesBetween[j + 4] != null)) { + String variable = (String) variablesBetween[j]; + Object value = variablesBetween[j + 1]; + Object value2 = variablesBetween[j + 2]; + String comparator1 = (String) variablesBetween[j + 3]; + String comparator2 = (String) variablesBetween[j + 4]; + tempWhere = (tempWhere.length() == 0) + ? ("(" + value + " " + comparator1 + " " + variable + + " and " + variable + " " + comparator2 + " " + value2 + + " )") + : (tempWhere + " AND (" + value + " " + comparator1 + + " " + variable + " and " + variable + " " + + comparator2 + " " + value2 + " )"); + } + + j = j + 4; + } + } + + if (variablesBetweenDates != null) { + for (int k = 0; k < variablesBetweenDates.length; k++) { + if ((variablesBetweenDates[k] != null) && + (variablesBetweenDates[k + 1] != null) && + (variablesBetweenDates[k + 2] != null)) { + String variable = (String) variablesBetweenDates[k]; + Object object1 = variablesBetweenDates[k + 1]; + Object object2 = variablesBetweenDates[k + 2]; + String value = null; + String value2 = null; + + try { + Date date1 = (Date) object1; + Date date2 = (Date) object2; + value = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date1); + value2 = Utilities.formatDateWithoutTimeInAStringForBetweenWhere(date2); + } catch (Exception e) { + list = null; + throw e; + } + + tempWhere = (tempWhere.length() == 0) + ? ("(model." + variable + " between \'" + value + + "\' and \'" + value2 + "\')") + : (tempWhere + " AND (model." + variable + + " between \'" + value + "\' and \'" + value2 + "\')"); + } + + k = k + 2; + } + } + + if (tempWhere.length() == 0) { + where = null; + } else { + where = "(" + tempWhere + ")"; + } + + try { + list = JPADaoFactory.getInstance().getCpUsuariosDAO() + .findByCriteria(where); + } catch (Exception e) { + throw new Exception(e.getMessage()); + } finally { + } + + return list; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpDetalleMovimientoLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpDetalleMovimientoLogic.java new file mode 100644 index 0000000..769408a --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpDetalleMovimientoLogic.java @@ -0,0 +1,53 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.personales.CpDetalleMovimiento; +import org.zathura.cuentas.personales.dto.CpDetalleMovimientoDTO; + +import java.math.BigDecimal; + +import java.util.*; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public interface ICpDetalleMovimientoLogic { + public List getCpDetalleMovimiento() + throws Exception; + + public void saveCpDetalleMovimiento(Long anno, Date fehcaRegistro, + Long idDetalleMovimiento, Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception; + + public void saveCpDetalleMovimientoWithOutId(Long anno, Date fehcaRegistro, + Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception; + + public void deleteCpDetalleMovimiento(Long idDetalleMovimiento) + throws Exception; + + public void updateCpDetalleMovimiento(Long anno, Date fehcaRegistro, + Long idDetalleMovimiento, Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception; + + public CpDetalleMovimiento getCpDetalleMovimiento(Long idDetalleMovimiento) + throws Exception; + + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception; + + public List findPageCpDetalleMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception; + + public Long findTotalNumberCpDetalleMovimiento() throws Exception; + + public List getDataCpDetalleMovimiento() + throws Exception; +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpGrupoMovimientoLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpGrupoMovimientoLogic.java new file mode 100644 index 0000000..1af98bc --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpGrupoMovimientoLogic.java @@ -0,0 +1,49 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.personales.CpGrupoMovimiento; +import org.zathura.cuentas.personales.dto.CpGrupoMovimientoDTO; + +import java.math.BigDecimal; + +import java.util.*; +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public interface ICpGrupoMovimientoLogic { + public List getCpGrupoMovimiento() + throws Exception; + + public void saveCpGrupoMovimiento(String descripcion, + Long idGrupoMovimiento, String observacion, + Long idTipoMovimiento_CpTipoMovimiento) throws Exception; + + public void deleteCpGrupoMovimiento(Long idGrupoMovimiento) + throws Exception; + + public void updateCpGrupoMovimiento(String descripcion, + Long idGrupoMovimiento, String observacion, + Long idTipoMovimiento_CpTipoMovimiento) throws Exception; + + public CpGrupoMovimiento getCpGrupoMovimiento(Long idGrupoMovimiento) + throws Exception; + + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception; + + public List findPageCpGrupoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception; + + public Long findTotalNumberCpGrupoMovimiento() throws Exception; + + public List getDataCpGrupoMovimiento() + throws Exception; +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpMovimientoLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpMovimientoLogic.java new file mode 100644 index 0000000..b0ca6c4 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpMovimientoLogic.java @@ -0,0 +1,54 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.personales.CpMovimiento; +import org.zathura.cuentas.personales.dto.CpMovimientoDTO; + +import java.math.BigDecimal; + +import java.util.*; +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public interface ICpMovimientoLogic { + public List getCpMovimiento() throws Exception; + + public void saveCpMovimiento(String descripcionMovimiento, + Long idMovimiento, String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception; + + public void saveCpMovimientoWithoutId(String descripcionMovimiento, + String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception; + + public void deleteCpMovimiento(Long idMovimiento) throws Exception; + + public void updateCpMovimiento(String descripcionMovimiento, + Long idMovimiento, String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception; + + public CpMovimiento getCpMovimiento(Long idMovimiento) + throws Exception; + + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception; + + public List findPageCpMovimiento(String sortColumnName, + boolean sortAscending, int startRow, int maxResults) + throws Exception; + + public Long findTotalNumberCpMovimiento() throws Exception; + + public List getDataCpMovimiento() + throws Exception; +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpTipoMovimientoLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpTipoMovimientoLogic.java new file mode 100644 index 0000000..4d6e24f --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpTipoMovimientoLogic.java @@ -0,0 +1,47 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.personales.CpTipoMovimiento; +import org.zathura.cuentas.personales.dto.CpTipoMovimientoDTO; + +import java.math.BigDecimal; + +import java.util.*; +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public interface ICpTipoMovimientoLogic { + public List getCpTipoMovimiento() + throws Exception; + + public void saveCpTipoMovimiento(String descripcion, Long idTipoMovimiento, + String observacion) throws Exception; + + public void deleteCpTipoMovimiento(Long idTipoMovimiento) + throws Exception; + + public void updateCpTipoMovimiento(String descripcion, + Long idTipoMovimiento, String observacion) throws Exception; + + public CpTipoMovimiento getCpTipoMovimiento(Long idTipoMovimiento) + throws Exception; + + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception; + + public List findPageCpTipoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception; + + public Long findTotalNumberCpTipoMovimiento() throws Exception; + + public List getDataCpTipoMovimiento() + throws Exception; +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpUsuariosLogic.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpUsuariosLogic.java new file mode 100644 index 0000000..619c8e0 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/control/ICpUsuariosLogic.java @@ -0,0 +1,45 @@ +package org.zathura.cuentas.personales.control; + +import org.zathura.cuentas.personales.CpUsuarios; +import org.zathura.cuentas.personales.dto.CpUsuariosDTO; + +import java.math.BigDecimal; + +import java.util.*; +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public interface ICpUsuariosLogic { + public List getCpUsuarios() throws Exception; + + public void saveCpUsuarios(String activo, String apellido, + String contrasena, String correo, Long idUsuario, Long movil, + String nombre, String observaciones) throws Exception; + + public void deleteCpUsuarios(Long idUsuario) throws Exception; + + public void updateCpUsuarios(String activo, String apellido, + String contrasena, String correo, Long idUsuario, Long movil, + String nombre, String observaciones) throws Exception; + + public CpUsuarios getCpUsuarios(Long idUsuario) throws Exception; + + public List findByCriteria(Object[] variables, + Object[] variablesBetween, Object[] variablesBetweenDates) + throws Exception; + + public List findPageCpUsuarios(String sortColumnName, + boolean sortAscending, int startRow, int maxResults) + throws Exception; + + public Long findTotalNumberCpUsuarios() throws Exception; + + public List getDataCpUsuarios() throws Exception; +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpDetalleMovimientoDTO.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpDetalleMovimientoDTO.java new file mode 100644 index 0000000..d68954e --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpDetalleMovimientoDTO.java @@ -0,0 +1,101 @@ +package org.zathura.cuentas.personales.dto; + +import org.zathura.cuentas.personales.CpDetalleMovimiento; + +import java.io.Serializable; + +import java.util.Date; + +import javax.faces.event.ActionEvent; + + +/** +* +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* support Andrés Mauricio Cárdenas mauriciocardenasp@gmail.com +*/ +public class CpDetalleMovimientoDTO implements Serializable { + private static final long serialVersionUID = 1L; + private Long anno; + private Date fehcaRegistro; + private Long idDetalleMovimiento; + private Long mes; + private String observaciones; + private String pendiente; + private Long valorMovimiento; + private Long valorPago; + private Long idMovimiento_CpMovimiento; + + public Long getAnno() { + return anno; + } + + public void setAnno(Long anno) { + this.anno = anno; + } + + public Date getFehcaRegistro() { + return fehcaRegistro; + } + + public void setFehcaRegistro(Date fehcaRegistro) { + this.fehcaRegistro = fehcaRegistro; + } + + public Long getIdDetalleMovimiento() { + return idDetalleMovimiento; + } + + public void setIdDetalleMovimiento(Long idDetalleMovimiento) { + this.idDetalleMovimiento = idDetalleMovimiento; + } + + public Long getMes() { + return mes; + } + + public void setMes(Long mes) { + this.mes = mes; + } + + public String getObservaciones() { + return observaciones; + } + + public void setObservaciones(String observaciones) { + this.observaciones = observaciones; + } + + public String getPendiente() { + return pendiente; + } + + public void setPendiente(String pendiente) { + this.pendiente = pendiente; + } + + public Long getValorMovimiento() { + return valorMovimiento; + } + + public void setValorMovimiento(Long valorMovimiento) { + this.valorMovimiento = valorMovimiento; + } + + public Long getValorPago() { + return valorPago; + } + + public void setValorPago(Long valorPago) { + this.valorPago = valorPago; + } + + public Long getIdMovimiento_CpMovimiento() { + return idMovimiento_CpMovimiento; + } + + public void setIdMovimiento_CpMovimiento(Long idMovimiento_CpMovimiento) { + this.idMovimiento_CpMovimiento = idMovimiento_CpMovimiento; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpGrupoMovimientoDTO.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpGrupoMovimientoDTO.java new file mode 100644 index 0000000..b9076b4 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpGrupoMovimientoDTO.java @@ -0,0 +1,57 @@ +package org.zathura.cuentas.personales.dto; + +import org.zathura.cuentas.personales.CpGrupoMovimiento; + +import java.io.Serializable; + +import java.util.Date; + +import javax.faces.event.ActionEvent; + + +/** +* +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* support Andrés Mauricio Cárdenas mauriciocardenasp@gmail.com +*/ +public class CpGrupoMovimientoDTO implements Serializable { + private static final long serialVersionUID = 1L; + private String descripcion; + private Long idGrupoMovimiento; + private String observacion; + private Long idTipoMovimiento_CpTipoMovimiento; + + public String getDescripcion() { + return descripcion; + } + + public void setDescripcion(String descripcion) { + this.descripcion = descripcion; + } + + public Long getIdGrupoMovimiento() { + return idGrupoMovimiento; + } + + public void setIdGrupoMovimiento(Long idGrupoMovimiento) { + this.idGrupoMovimiento = idGrupoMovimiento; + } + + public String getObservacion() { + return observacion; + } + + public void setObservacion(String observacion) { + this.observacion = observacion; + } + + public Long getIdTipoMovimiento_CpTipoMovimiento() { + return idTipoMovimiento_CpTipoMovimiento; + } + + public void setIdTipoMovimiento_CpTipoMovimiento( + Long idTipoMovimiento_CpTipoMovimiento) { + this.idTipoMovimiento_CpTipoMovimiento = idTipoMovimiento_CpTipoMovimiento; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpMovimientoDTO.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpMovimientoDTO.java new file mode 100644 index 0000000..d009461 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpMovimientoDTO.java @@ -0,0 +1,77 @@ +package org.zathura.cuentas.personales.dto; + +import org.zathura.cuentas.personales.CpMovimiento; + +import java.io.Serializable; + +import java.util.Date; + +import javax.faces.event.ActionEvent; + + +/** +* +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* support Andrés Mauricio Cárdenas mauriciocardenasp@gmail.com +*/ +public class CpMovimientoDTO implements Serializable { + private static final long serialVersionUID = 1L; + private String descripcionMovimiento; + private Long idMovimiento; + private String observaciones; + private Long idGrupoMovimiento_CpGrupoMovimiento; + private Long idUsuario_CpUsuarios; + private String descripcionGrupo; + + public String getDescripcionMovimiento() { + return descripcionMovimiento; + } + + public void setDescripcionMovimiento(String descripcionMovimiento) { + this.descripcionMovimiento = descripcionMovimiento; + } + + public Long getIdMovimiento() { + return idMovimiento; + } + + public void setIdMovimiento(Long idMovimiento) { + this.idMovimiento = idMovimiento; + } + + public String getObservaciones() { + return observaciones; + } + + public void setObservaciones(String observaciones) { + this.observaciones = observaciones; + } + + public Long getIdGrupoMovimiento_CpGrupoMovimiento() { + return idGrupoMovimiento_CpGrupoMovimiento; + } + + public void setIdGrupoMovimiento_CpGrupoMovimiento( + Long idGrupoMovimiento_CpGrupoMovimiento) { + this.idGrupoMovimiento_CpGrupoMovimiento = idGrupoMovimiento_CpGrupoMovimiento; + } + + public Long getIdUsuario_CpUsuarios() { + return idUsuario_CpUsuarios; + } + + public void setIdUsuario_CpUsuarios(Long idUsuario_CpUsuarios) { + this.idUsuario_CpUsuarios = idUsuario_CpUsuarios; + } + + public String getDescripcionGrupo() { + return descripcionGrupo; + } + + public void setDescripcionGrupo(String descripcionGrupo) { + this.descripcionGrupo = descripcionGrupo; + } + + +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpTipoMovimientoDTO.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpTipoMovimientoDTO.java new file mode 100644 index 0000000..3874841 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpTipoMovimientoDTO.java @@ -0,0 +1,47 @@ +package org.zathura.cuentas.personales.dto; + +import org.zathura.cuentas.personales.CpTipoMovimiento; + +import java.io.Serializable; + +import java.util.Date; + +import javax.faces.event.ActionEvent; + + +/** +* +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* support Andrés Mauricio Cárdenas mauriciocardenasp@gmail.com +*/ +public class CpTipoMovimientoDTO implements Serializable { + private static final long serialVersionUID = 1L; + private String descripcion; + private Long idTipoMovimiento; + private String observacion; + + public String getDescripcion() { + return descripcion; + } + + public void setDescripcion(String descripcion) { + this.descripcion = descripcion; + } + + public Long getIdTipoMovimiento() { + return idTipoMovimiento; + } + + public void setIdTipoMovimiento(Long idTipoMovimiento) { + this.idTipoMovimiento = idTipoMovimiento; + } + + public String getObservacion() { + return observacion; + } + + public void setObservacion(String observacion) { + this.observacion = observacion; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpUsuariosDTO.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpUsuariosDTO.java new file mode 100644 index 0000000..794c7bb --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/CpUsuariosDTO.java @@ -0,0 +1,92 @@ +package org.zathura.cuentas.personales.dto; + +import org.zathura.cuentas.personales.CpUsuarios; + +import java.io.Serializable; + +import java.util.Date; + +import javax.faces.event.ActionEvent; + + +/** +* +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* support Andrés Mauricio Cárdenas mauriciocardenasp@gmail.com +*/ +public class CpUsuariosDTO implements Serializable { + private static final long serialVersionUID = 1L; + private String activo; + private String apellido; + private String contrasena; + private String correo; + private Long idUsuario; + private Long movil; + private String nombre; + private String observaciones; + + public String getActivo() { + return activo; + } + + public void setActivo(String activo) { + this.activo = activo; + } + + public String getApellido() { + return apellido; + } + + public void setApellido(String apellido) { + this.apellido = apellido; + } + + public String getContrasena() { + return contrasena; + } + + public void setContrasena(String contrasena) { + this.contrasena = contrasena; + } + + public String getCorreo() { + return correo; + } + + public void setCorreo(String correo) { + this.correo = correo; + } + + public Long getIdUsuario() { + return idUsuario; + } + + public void setIdUsuario(Long idUsuario) { + this.idUsuario = idUsuario; + } + + public Long getMovil() { + return movil; + } + + public void setMovil(Long movil) { + this.movil = movil; + } + + public String getNombre() { + return nombre; + } + + public void setNombre(String nombre) { + this.nombre = nombre; + } + + public String getObservaciones() { + return observaciones; + } + + public void setObservaciones(String observaciones) { + this.observaciones = observaciones; + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/MovimientoAplica.java b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/MovimientoAplica.java new file mode 100644 index 0000000..482d35e --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/personales/dto/MovimientoAplica.java @@ -0,0 +1,93 @@ +package org.zathura.cuentas.personales.dto; + +public class MovimientoAplica extends CpMovimientoDTO{ + + private boolean enero; + private boolean febrero; + private boolean marzo; + private boolean abril; + private boolean mayo; + private boolean junio; + private boolean julio; + private boolean agosto; + private boolean septiembre; + private boolean octubre; + private boolean noviembre; + private boolean diciembre; + + public boolean isEnero() { + return enero; + } + public void setEnero(boolean enero) { + this.enero = enero; + } + public boolean isFebrero() { + return febrero; + } + public void setFebrero(boolean febrero) { + this.febrero = febrero; + } + public boolean isMarzo() { + return marzo; + } + public void setMarzo(boolean marzo) { + this.marzo = marzo; + } + public boolean isAbril() { + return abril; + } + public void setAbril(boolean abril) { + this.abril = abril; + } + public boolean isMayo() { + return mayo; + } + public void setMayo(boolean mayo) { + this.mayo = mayo; + } + public boolean isJunio() { + return junio; + } + public void setJunio(boolean junio) { + this.junio = junio; + } + public boolean isJulio() { + return julio; + } + public void setJulio(boolean julio) { + this.julio = julio; + } + public boolean isAgosto() { + return agosto; + } + public void setAgosto(boolean agosto) { + this.agosto = agosto; + } + public boolean isSeptiembre() { + return septiembre; + } + public void setSeptiembre(boolean septiembre) { + this.septiembre = septiembre; + } + public boolean isOctubre() { + return octubre; + } + public void setOctubre(boolean octubre) { + this.octubre = octubre; + } + public boolean isNoviembre() { + return noviembre; + } + public void setNoviembre(boolean noviembre) { + this.noviembre = noviembre; + } + public boolean isDiciembre() { + return diciembre; + } + public void setDiciembre(boolean diciembre) { + this.diciembre = diciembre; + } + + + +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpDetalleMovimientoView.java b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpDetalleMovimientoView.java new file mode 100644 index 0000000..cd0d335 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpDetalleMovimientoView.java @@ -0,0 +1,469 @@ +package org.zathura.cuentas.presentation.backingBeans; + +import org.primefaces.component.calendar.*; +import org.primefaces.component.commandbutton.CommandButton; +import org.primefaces.component.inputtext.InputText; + +import org.primefaces.event.DateSelectEvent; +import org.primefaces.event.RowEditEvent; + +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpDetalleMovimientoDTO; +import org.zathura.cuentas.presentation.businessDelegate.BusinessDelegatorView; +import org.zathura.cuentas.utilities.*; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.TimeZone; + +import javax.faces.application.FacesMessage; +import javax.faces.context.FacesContext; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpDetalleMovimientoView { + private InputText txtAnno; + private InputText txtMes; + private InputText txtObservaciones; + private InputText txtPendiente; + private InputText txtValorMovimiento; + private InputText txtValorPago; + private InputText txtIdMovimiento_CpMovimiento; + private InputText txtIdDetalleMovimiento; + private Calendar txtFehcaRegistro; + private CommandButton btnSave; + private CommandButton btnModify; + private CommandButton btnDelete; + private CommandButton btnClear; + private List data; + private CpDetalleMovimientoDTO selectedCpDetalleMovimiento; + + public CpDetalleMovimientoView() { + super(); + } + + public void rowEventListener(RowEditEvent e) { + try { + CpDetalleMovimientoDTO cpDetalleMovimientoDTO = (CpDetalleMovimientoDTO) e.getObject(); + + if (txtAnno == null) { + txtAnno = new InputText(); + } + + txtAnno.setValue(cpDetalleMovimientoDTO.getAnno()); + + if (txtMes == null) { + txtMes = new InputText(); + } + + txtMes.setValue(cpDetalleMovimientoDTO.getMes()); + + if (txtObservaciones == null) { + txtObservaciones = new InputText(); + } + + txtObservaciones.setValue(cpDetalleMovimientoDTO.getObservaciones()); + + if (txtPendiente == null) { + txtPendiente = new InputText(); + } + + txtPendiente.setValue(cpDetalleMovimientoDTO.getPendiente()); + + if (txtValorMovimiento == null) { + txtValorMovimiento = new InputText(); + } + + txtValorMovimiento.setValue(cpDetalleMovimientoDTO.getValorMovimiento()); + + if (txtValorPago == null) { + txtValorPago = new InputText(); + } + + txtValorPago.setValue(cpDetalleMovimientoDTO.getValorPago()); + + if (txtIdMovimiento_CpMovimiento == null) { + txtIdMovimiento_CpMovimiento = new InputText(); + } + + txtIdMovimiento_CpMovimiento.setValue(cpDetalleMovimientoDTO.getIdMovimiento_CpMovimiento()); + + if (txtIdDetalleMovimiento == null) { + txtIdDetalleMovimiento = new InputText(); + } + + txtIdDetalleMovimiento.setValue(cpDetalleMovimientoDTO.getIdDetalleMovimiento()); + + if (txtFehcaRegistro == null) { + txtFehcaRegistro = new Calendar(); + } + + txtFehcaRegistro.setValue(cpDetalleMovimientoDTO.getFehcaRegistro()); + + action_modify(); + } catch (Exception ex) { + } + } + + public String action_clear() { + if (txtAnno != null) { + txtAnno.setValue(null); + txtAnno.setDisabled(true); + } + + if (txtMes != null) { + txtMes.setValue(null); + txtMes.setDisabled(true); + } + + if (txtObservaciones != null) { + txtObservaciones.setValue(null); + txtObservaciones.setDisabled(true); + } + + if (txtPendiente != null) { + txtPendiente.setValue(null); + txtPendiente.setDisabled(true); + } + + if (txtValorMovimiento != null) { + txtValorMovimiento.setValue(null); + txtValorMovimiento.setDisabled(true); + } + + if (txtValorPago != null) { + txtValorPago.setValue(null); + txtValorPago.setDisabled(true); + } + + if (txtIdMovimiento_CpMovimiento != null) { + txtIdMovimiento_CpMovimiento.setValue(null); + txtIdMovimiento_CpMovimiento.setDisabled(true); + } + + if (txtFehcaRegistro != null) { + txtFehcaRegistro.setValue(null); + txtFehcaRegistro.setDisabled(true); + } + + if (txtIdDetalleMovimiento != null) { + txtIdDetalleMovimiento.setValue(null); + txtIdDetalleMovimiento.setDisabled(false); + } + + if (btnSave != null) { + btnSave.setDisabled(true); + } + + if (btnDelete != null) { + btnDelete.setDisabled(true); + } + + if (btnModify != null) { + btnModify.setDisabled(true); + } + + if (btnClear != null) { + btnClear.setDisabled(false); + } + + return ""; + } + + public void listener_txtFehcaRegistro(DateSelectEvent dse) { + Date inputDate = (Date) txtFehcaRegistro.getValue(); + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); + FacesContext.getCurrentInstance() + .addMessage("", + new FacesMessage("Fecha Seleccionada " + + dateFormat.format(dse.getDate()))); + } + + public void listener_txtId() { + CpDetalleMovimiento entity = null; + + try { + Long idDetalleMovimiento = new Long(txtIdDetalleMovimiento.getValue() + .toString()); + entity = BusinessDelegatorView.getCpDetalleMovimiento(idDetalleMovimiento); + } catch (Exception e) { + // TODO: handle exception + } + + if (entity == null) { + txtAnno.setDisabled(false); + txtMes.setDisabled(false); + txtObservaciones.setDisabled(false); + txtPendiente.setDisabled(false); + txtValorMovimiento.setDisabled(false); + txtValorPago.setDisabled(false); + txtIdMovimiento_CpMovimiento.setDisabled(false); + txtFehcaRegistro.setDisabled(false); + txtIdDetalleMovimiento.setDisabled(false); + btnSave.setDisabled(false); + btnDelete.setDisabled(true); + btnModify.setDisabled(true); + btnClear.setDisabled(false); + } else { + txtAnno.setValue(entity.getAnno()); + txtAnno.setDisabled(false); + txtFehcaRegistro.setValue(entity.getFehcaRegistro()); + txtFehcaRegistro.setDisabled(false); + txtMes.setValue(entity.getMes()); + txtMes.setDisabled(false); + txtObservaciones.setValue(entity.getObservaciones()); + txtObservaciones.setDisabled(false); + txtPendiente.setValue(entity.getPendiente()); + txtPendiente.setDisabled(false); + txtValorMovimiento.setValue(entity.getValorMovimiento()); + txtValorMovimiento.setDisabled(false); + txtValorPago.setValue(entity.getValorPago()); + txtValorPago.setDisabled(false); + txtIdMovimiento_CpMovimiento.setValue(entity.getCpMovimiento() + .getIdMovimiento()); + txtIdMovimiento_CpMovimiento.setDisabled(false); + txtIdDetalleMovimiento.setValue(entity.getIdDetalleMovimiento()); + txtIdDetalleMovimiento.setDisabled(true); + btnSave.setDisabled(true); + btnDelete.setDisabled(false); + btnModify.setDisabled(false); + btnClear.setDisabled(false); + } + } + + public String action_save() { + try { + BusinessDelegatorView.saveCpDetalleMovimiento(FacesUtils.checkLong( + txtAnno), FacesUtils.checkDate(txtFehcaRegistro), + FacesUtils.checkLong(txtIdDetalleMovimiento), + FacesUtils.checkLong(txtMes), + FacesUtils.checkString(txtObservaciones), + FacesUtils.checkString(txtPendiente), + FacesUtils.checkLong(txtValorMovimiento), + FacesUtils.checkLong(txtValorPago), + FacesUtils.checkLong(txtIdMovimiento_CpMovimiento)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_delete() { + try { + BusinessDelegatorView.deleteCpDetalleMovimiento(FacesUtils.checkLong( + txtIdDetalleMovimiento)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modify() { + try { + BusinessDelegatorView.updateCpDetalleMovimiento(FacesUtils.checkLong( + txtAnno), FacesUtils.checkDate(txtFehcaRegistro), + FacesUtils.checkLong(txtIdDetalleMovimiento), + FacesUtils.checkLong(txtMes), + FacesUtils.checkString(txtObservaciones), + FacesUtils.checkString(txtPendiente), + FacesUtils.checkLong(txtValorMovimiento), + FacesUtils.checkLong(txtValorPago), + FacesUtils.checkLong(txtIdMovimiento_CpMovimiento)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + action_clear(); + } catch (Exception e) { + data = null; + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String actionDeleteDataTableEditable() { + try { + if (txtIdDetalleMovimiento == null) { + txtIdDetalleMovimiento = new InputText(); + } + + txtIdDetalleMovimiento.setValue(selectedCpDetalleMovimiento.getIdDetalleMovimiento()); + + BusinessDelegatorView.deleteCpDetalleMovimiento(FacesUtils.checkLong( + txtIdDetalleMovimiento)); + data.remove(selectedCpDetalleMovimiento); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modifyWitDTO(Long anno, Date fehcaRegistro, + Long idDetalleMovimiento, Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception { + try { + BusinessDelegatorView.updateCpDetalleMovimiento(anno, + fehcaRegistro, idDetalleMovimiento, mes, observaciones, + pendiente, valorMovimiento, valorPago, idMovimiento_CpMovimiento); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + } catch (Exception e) { + //renderManager.getOnDemandRenderer("CpDetalleMovimientoView").requestRender(); + FacesUtils.addErrorMessage(e.getMessage()); + throw e; + } + + return ""; + } + + public InputText getTxtAnno() { + return txtAnno; + } + + public void setTxtAnno(InputText txtAnno) { + this.txtAnno = txtAnno; + } + + public InputText getTxtMes() { + return txtMes; + } + + public void setTxtMes(InputText txtMes) { + this.txtMes = txtMes; + } + + public InputText getTxtObservaciones() { + return txtObservaciones; + } + + public void setTxtObservaciones(InputText txtObservaciones) { + this.txtObservaciones = txtObservaciones; + } + + public InputText getTxtPendiente() { + return txtPendiente; + } + + public void setTxtPendiente(InputText txtPendiente) { + this.txtPendiente = txtPendiente; + } + + public InputText getTxtValorMovimiento() { + return txtValorMovimiento; + } + + public void setTxtValorMovimiento(InputText txtValorMovimiento) { + this.txtValorMovimiento = txtValorMovimiento; + } + + public InputText getTxtValorPago() { + return txtValorPago; + } + + public void setTxtValorPago(InputText txtValorPago) { + this.txtValorPago = txtValorPago; + } + + public InputText getTxtIdMovimiento_CpMovimiento() { + return txtIdMovimiento_CpMovimiento; + } + + public void setTxtIdMovimiento_CpMovimiento( + InputText txtIdMovimiento_CpMovimiento) { + this.txtIdMovimiento_CpMovimiento = txtIdMovimiento_CpMovimiento; + } + + public Calendar getTxtFehcaRegistro() { + return txtFehcaRegistro; + } + + public void setTxtFehcaRegistro(Calendar txtFehcaRegistro) { + this.txtFehcaRegistro = txtFehcaRegistro; + } + + public InputText getTxtIdDetalleMovimiento() { + return txtIdDetalleMovimiento; + } + + public void setTxtIdDetalleMovimiento(InputText txtIdDetalleMovimiento) { + this.txtIdDetalleMovimiento = txtIdDetalleMovimiento; + } + + public List getData() { + try { + if (data == null) { + data = BusinessDelegatorView.getDataCpDetalleMovimiento(); + } + } catch (Exception e) { + e.printStackTrace(); + } + + return data; + } + + public void setData(List cpDetalleMovimientoDTO) { + this.data = cpDetalleMovimientoDTO; + } + + public CpDetalleMovimientoDTO getSelectedCpDetalleMovimiento() { + return selectedCpDetalleMovimiento; + } + + public void setSelectedCpDetalleMovimiento( + CpDetalleMovimientoDTO cpDetalleMovimiento) { + this.selectedCpDetalleMovimiento = cpDetalleMovimiento; + } + + public CommandButton getBtnSave() { + return btnSave; + } + + public void setBtnSave(CommandButton btnSave) { + this.btnSave = btnSave; + } + + public CommandButton getBtnModify() { + return btnModify; + } + + public void setBtnModify(CommandButton btnModify) { + this.btnModify = btnModify; + } + + public CommandButton getBtnDelete() { + return btnDelete; + } + + public void setBtnDelete(CommandButton btnDelete) { + this.btnDelete = btnDelete; + } + + public CommandButton getBtnClear() { + return btnClear; + } + + public void setBtnClear(CommandButton btnClear) { + this.btnClear = btnClear; + } + + public TimeZone getTimeZone() { + return java.util.TimeZone.getDefault(); + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpGrupoMovimientoView.java b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpGrupoMovimientoView.java new file mode 100644 index 0000000..6375e1a --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpGrupoMovimientoView.java @@ -0,0 +1,336 @@ +package org.zathura.cuentas.presentation.backingBeans; + +import org.primefaces.component.calendar.*; +import org.primefaces.component.commandbutton.CommandButton; +import org.primefaces.component.inputtext.InputText; + +import org.primefaces.event.DateSelectEvent; +import org.primefaces.event.RowEditEvent; + +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpGrupoMovimientoDTO; +import org.zathura.cuentas.presentation.businessDelegate.BusinessDelegatorView; +import org.zathura.cuentas.utilities.*; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.TimeZone; + +import javax.faces.application.FacesMessage; +import javax.faces.context.FacesContext; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpGrupoMovimientoView { + private InputText txtDescripcion; + private InputText txtObservacion; + private InputText txtIdTipoMovimiento_CpTipoMovimiento; + private InputText txtIdGrupoMovimiento; + private CommandButton btnSave; + private CommandButton btnModify; + private CommandButton btnDelete; + private CommandButton btnClear; + private List data; + private CpGrupoMovimientoDTO selectedCpGrupoMovimiento; + + public CpGrupoMovimientoView() { + super(); + } + + public void rowEventListener(RowEditEvent e) { + try { + CpGrupoMovimientoDTO cpGrupoMovimientoDTO = (CpGrupoMovimientoDTO) e.getObject(); + + if (txtDescripcion == null) { + txtDescripcion = new InputText(); + } + + txtDescripcion.setValue(cpGrupoMovimientoDTO.getDescripcion()); + + if (txtObservacion == null) { + txtObservacion = new InputText(); + } + + txtObservacion.setValue(cpGrupoMovimientoDTO.getObservacion()); + + if (txtIdTipoMovimiento_CpTipoMovimiento == null) { + txtIdTipoMovimiento_CpTipoMovimiento = new InputText(); + } + + txtIdTipoMovimiento_CpTipoMovimiento.setValue(cpGrupoMovimientoDTO.getIdTipoMovimiento_CpTipoMovimiento()); + + if (txtIdGrupoMovimiento == null) { + txtIdGrupoMovimiento = new InputText(); + } + + txtIdGrupoMovimiento.setValue(cpGrupoMovimientoDTO.getIdGrupoMovimiento()); + + action_modify(); + } catch (Exception ex) { + } + } + + public String action_clear() { + if (txtDescripcion != null) { + txtDescripcion.setValue(null); + txtDescripcion.setDisabled(true); + } + + if (txtObservacion != null) { + txtObservacion.setValue(null); + txtObservacion.setDisabled(true); + } + + if (txtIdTipoMovimiento_CpTipoMovimiento != null) { + txtIdTipoMovimiento_CpTipoMovimiento.setValue(null); + txtIdTipoMovimiento_CpTipoMovimiento.setDisabled(true); + } + + if (txtIdGrupoMovimiento != null) { + txtIdGrupoMovimiento.setValue(null); + txtIdGrupoMovimiento.setDisabled(false); + } + + if (btnSave != null) { + btnSave.setDisabled(true); + } + + if (btnDelete != null) { + btnDelete.setDisabled(true); + } + + if (btnModify != null) { + btnModify.setDisabled(true); + } + + if (btnClear != null) { + btnClear.setDisabled(false); + } + + return ""; + } + + public void listener_txtId() { + CpGrupoMovimiento entity = null; + + try { + Long idGrupoMovimiento = new Long(txtIdGrupoMovimiento.getValue() + .toString()); + entity = BusinessDelegatorView.getCpGrupoMovimiento(idGrupoMovimiento); + } catch (Exception e) { + // TODO: handle exception + } + + if (entity == null) { + txtDescripcion.setDisabled(false); + txtObservacion.setDisabled(false); + txtIdTipoMovimiento_CpTipoMovimiento.setDisabled(false); + txtIdGrupoMovimiento.setDisabled(false); + btnSave.setDisabled(false); + btnDelete.setDisabled(true); + btnModify.setDisabled(true); + btnClear.setDisabled(false); + } else { + txtDescripcion.setValue(entity.getDescripcion()); + txtDescripcion.setDisabled(false); + txtObservacion.setValue(entity.getObservacion()); + txtObservacion.setDisabled(false); + txtIdTipoMovimiento_CpTipoMovimiento.setValue(entity.getCpTipoMovimiento() + .getIdTipoMovimiento()); + txtIdTipoMovimiento_CpTipoMovimiento.setDisabled(false); + txtIdGrupoMovimiento.setValue(entity.getIdGrupoMovimiento()); + txtIdGrupoMovimiento.setDisabled(true); + btnSave.setDisabled(true); + btnDelete.setDisabled(false); + btnModify.setDisabled(false); + btnClear.setDisabled(false); + } + } + + public String action_save() { + try { + BusinessDelegatorView.saveCpGrupoMovimiento(FacesUtils.checkString( + txtDescripcion), + FacesUtils.checkLong(txtIdGrupoMovimiento), + FacesUtils.checkString(txtObservacion), + FacesUtils.checkLong(txtIdTipoMovimiento_CpTipoMovimiento)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_delete() { + try { + BusinessDelegatorView.deleteCpGrupoMovimiento(FacesUtils.checkLong( + txtIdGrupoMovimiento)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modify() { + try { + BusinessDelegatorView.updateCpGrupoMovimiento(FacesUtils.checkString( + txtDescripcion), + FacesUtils.checkLong(txtIdGrupoMovimiento), + FacesUtils.checkString(txtObservacion), + FacesUtils.checkLong(txtIdTipoMovimiento_CpTipoMovimiento)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + action_clear(); + } catch (Exception e) { + data = null; + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String actionDeleteDataTableEditable() { + try { + if (txtIdGrupoMovimiento == null) { + txtIdGrupoMovimiento = new InputText(); + } + + txtIdGrupoMovimiento.setValue(selectedCpGrupoMovimiento.getIdGrupoMovimiento()); + + BusinessDelegatorView.deleteCpGrupoMovimiento(FacesUtils.checkLong( + txtIdGrupoMovimiento)); + data.remove(selectedCpGrupoMovimiento); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modifyWitDTO(String descripcion, + Long idGrupoMovimiento, String observacion, + Long idTipoMovimiento_CpTipoMovimiento) throws Exception { + try { + BusinessDelegatorView.updateCpGrupoMovimiento(descripcion, + idGrupoMovimiento, observacion, + idTipoMovimiento_CpTipoMovimiento); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + } catch (Exception e) { + //renderManager.getOnDemandRenderer("CpGrupoMovimientoView").requestRender(); + FacesUtils.addErrorMessage(e.getMessage()); + throw e; + } + + return ""; + } + + public InputText getTxtDescripcion() { + return txtDescripcion; + } + + public void setTxtDescripcion(InputText txtDescripcion) { + this.txtDescripcion = txtDescripcion; + } + + public InputText getTxtObservacion() { + return txtObservacion; + } + + public void setTxtObservacion(InputText txtObservacion) { + this.txtObservacion = txtObservacion; + } + + public InputText getTxtIdTipoMovimiento_CpTipoMovimiento() { + return txtIdTipoMovimiento_CpTipoMovimiento; + } + + public void setTxtIdTipoMovimiento_CpTipoMovimiento( + InputText txtIdTipoMovimiento_CpTipoMovimiento) { + this.txtIdTipoMovimiento_CpTipoMovimiento = txtIdTipoMovimiento_CpTipoMovimiento; + } + + public InputText getTxtIdGrupoMovimiento() { + return txtIdGrupoMovimiento; + } + + public void setTxtIdGrupoMovimiento(InputText txtIdGrupoMovimiento) { + this.txtIdGrupoMovimiento = txtIdGrupoMovimiento; + } + + public List getData() { + try { + if (data == null) { + data = BusinessDelegatorView.getDataCpGrupoMovimiento(); + } + } catch (Exception e) { + e.printStackTrace(); + } + + return data; + } + + public void setData(List cpGrupoMovimientoDTO) { + this.data = cpGrupoMovimientoDTO; + } + + public CpGrupoMovimientoDTO getSelectedCpGrupoMovimiento() { + return selectedCpGrupoMovimiento; + } + + public void setSelectedCpGrupoMovimiento( + CpGrupoMovimientoDTO cpGrupoMovimiento) { + this.selectedCpGrupoMovimiento = cpGrupoMovimiento; + } + + public CommandButton getBtnSave() { + return btnSave; + } + + public void setBtnSave(CommandButton btnSave) { + this.btnSave = btnSave; + } + + public CommandButton getBtnModify() { + return btnModify; + } + + public void setBtnModify(CommandButton btnModify) { + this.btnModify = btnModify; + } + + public CommandButton getBtnDelete() { + return btnDelete; + } + + public void setBtnDelete(CommandButton btnDelete) { + this.btnDelete = btnDelete; + } + + public CommandButton getBtnClear() { + return btnClear; + } + + public void setBtnClear(CommandButton btnClear) { + this.btnClear = btnClear; + } + + public TimeZone getTimeZone() { + return java.util.TimeZone.getDefault(); + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpMovimientoView.java b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpMovimientoView.java new file mode 100644 index 0000000..4491618 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpMovimientoView.java @@ -0,0 +1,1062 @@ +package org.zathura.cuentas.presentation.backingBeans; + +import org.primefaces.component.calendar.*; +import org.primefaces.component.commandbutton.CommandButton; +import org.primefaces.component.inputtext.InputText; +import org.primefaces.component.selectbooleancheckbox.SelectBooleanCheckbox; +import org.primefaces.component.selectcheckboxmenu.SelectCheckboxMenu; +import org.primefaces.component.selectonemenu.SelectOneMenu; +import org.primefaces.component.selectoneradio.SelectOneRadio; + +import org.primefaces.event.DateSelectEvent; +import org.primefaces.event.RowEditEvent; +import org.primefaces.event.SelectEvent; + +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpMovimientoDTO; +import org.zathura.cuentas.personales.dto.MovimientoAplica; +import org.zathura.cuentas.presentation.businessDelegate.BusinessDelegatorView; +import org.zathura.cuentas.utilities.*; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; + +import java.util.ArrayList; +import java.util.Date; +import java.util.Iterator; +import java.util.List; +import java.util.Set; +import java.util.TimeZone; + +import javax.faces.application.FacesMessage; +import javax.faces.context.FacesContext; +import javax.faces.event.ValueChangeEvent; +import javax.faces.model.SelectItem; +import javax.swing.text.StyledEditorKit.BoldAction; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpMovimientoView { + private InputText txtDescripcionMovimiento; + private InputText txtObservaciones; + private InputText txtIdGrupoMovimiento_CpGrupoMovimiento; + private InputText txtIdUsuario_CpUsuarios; + private InputText txtIdMovimiento; + private InputText txtAnnoAplica; + private CommandButton btnSave; + private CommandButton btnModify; + private CommandButton btnDelete; + private CommandButton btnClear; + private Long slctTipoMovimiento; + private Long slctGrupoMovimiento; + private List listGrupoMovimento; + private List slctCheckMeses; + private List listMeses; + private List data; + private List lstMovAplica; + private CpMovimientoDTO selectedCpMovimiento; + private Long gm = 0L; + private Long annoAplica; + + //meses + private boolean enero; + private boolean febrero; + private boolean marzo; + private boolean abril; + private boolean mayo; + private boolean junio; + private boolean julio; + private boolean agosto; + private boolean septiembre; + private boolean octubre; + private boolean noviembre; + private boolean diciembre; + + //meses + // private SelectBooleanCheckbox checkEnero; + + + + public CpMovimientoView() { + super(); + } + + public void startChanged(ValueChangeEvent event) { + try{ + if(event.getNewValue() != null || !event.getNewValue().equals("") ) + annoAplica = new Long(event.getNewValue().toString()); + + //List dataTmp = new ArrayList(); + //dataTmp=data; + //Long mes = 0L; + for (CpMovimientoDTO cpMovimientoDTO : data) { + for(Long mes=1L;mes<=12;mes++){ + Object[] arr={"cpMovimiento",false,cpMovimientoDTO.getIdMovimiento(),"=", + "anno",false,annoAplica,"=", + "mes",false,mes,"="}; + List lista = new ArrayList(); + lista=BusinessDelegatorView.findByCriteriaInCpDetalleMovimiento(arr, null, null) ; +// if(mes == 1L){ +// if(lista.size()>0){ +// checkEnero.setValue(true); +// enero = true; +// checkEnero.setSelected(true); +// checkEnero.setRendered(true); +// } else { +// checkEnero.setValue(false); +// } +// } + } + + } + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + } + + public void rowEventAplica(SelectEvent e){ + try{ + selectedCpMovimiento = (CpMovimientoDTO) e.getObject(); + //checkEnero.setDisabled(true); + + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + } + } + + + public void controlCheckEnero(ValueChangeEvent event) { + try{ + Long mesSelected = 1L; //Enero + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckFebrero(ValueChangeEvent event) { + try{ + Long mesSelected = 2L; //Enero + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckMarzo(ValueChangeEvent event) { + try{ + Long mesSelected = 3L; //Marzo + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckAbril(ValueChangeEvent event) { + try{ + Long mesSelected = 4L; //Abril + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckMayo(ValueChangeEvent event) { + try{ + Long mesSelected = 5L; //Mayo + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckJunio(ValueChangeEvent event) { + try{ + Long mesSelected = 6L; // Junio + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckJulio(ValueChangeEvent event) { + try{ + Long mesSelected = 7L; //Julio + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckAgosto(ValueChangeEvent event) { + try{ + Long mesSelected = 8L; //Agosto + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckSeptiembre(ValueChangeEvent event) { + try{ + Long mesSelected = 9L; //Septiembre + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckOctubre(ValueChangeEvent event) { + try{ + Long mesSelected = 10L; //Octubre + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckNoviembre(ValueChangeEvent event) { + try{ + Long mesSelected = 11L; //Noviembre + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void controlCheckDiciembre(ValueChangeEvent event) { + try{ + Long mesSelected = 12L; //Diciembre + boolean tmp = (Boolean)event.getNewValue() ; + + if(tmp){ + action_check_save(mesSelected); + }else{ + action_check_delete(mesSelected); + } + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + ex.printStackTrace(); + } + } + + public void rowEventListener(RowEditEvent e) { + + try { + CpMovimientoDTO cpMovimientoDTO = (CpMovimientoDTO) e.getObject(); + + if (txtDescripcionMovimiento == null) { + txtDescripcionMovimiento = new InputText(); + } + + txtDescripcionMovimiento.setValue(cpMovimientoDTO.getDescripcionMovimiento()); + + if (txtObservaciones == null) { + txtObservaciones = new InputText(); + } + + txtObservaciones.setValue(cpMovimientoDTO.getObservaciones()); + + if (txtIdGrupoMovimiento_CpGrupoMovimiento == null) { + txtIdGrupoMovimiento_CpGrupoMovimiento = new InputText(); + } + + txtIdGrupoMovimiento_CpGrupoMovimiento.setValue(cpMovimientoDTO.getIdGrupoMovimiento_CpGrupoMovimiento()); + + if (txtIdUsuario_CpUsuarios == null) { + txtIdUsuario_CpUsuarios = new InputText(); + } + + txtIdUsuario_CpUsuarios.setValue(cpMovimientoDTO.getIdUsuario_CpUsuarios()); + + if (txtIdMovimiento == null) { + txtIdMovimiento = new InputText(); + } + + txtIdMovimiento.setValue(cpMovimientoDTO.getIdMovimiento()); + + action_modify(); + } catch (Exception ex) { + } + } + + public String action_clear() { + if (txtDescripcionMovimiento != null) { + txtDescripcionMovimiento.setValue(null); + txtDescripcionMovimiento.setDisabled(true); + } + + if (txtObservaciones != null) { + txtObservaciones.setValue(null); + txtObservaciones.setDisabled(true); + } + + if (txtIdGrupoMovimiento_CpGrupoMovimiento != null) { + txtIdGrupoMovimiento_CpGrupoMovimiento.setValue(null); + txtIdGrupoMovimiento_CpGrupoMovimiento.setDisabled(true); + } + + if (txtIdUsuario_CpUsuarios != null) { + txtIdUsuario_CpUsuarios.setValue(null); + txtIdUsuario_CpUsuarios.setDisabled(true); + } + + if (txtIdMovimiento != null) { + txtIdMovimiento.setValue(null); + txtIdMovimiento.setDisabled(false); + } + + if (btnSave != null) { + btnSave.setDisabled(true); + } + + if (btnDelete != null) { + btnDelete.setDisabled(true); + } + + if (btnModify != null) { + btnModify.setDisabled(true); + } + + if (btnClear != null) { + btnClear.setDisabled(false); + } + + return ""; + } + + public void listener_txtId() { + CpMovimiento entity = null; + + try { + Long idMovimiento = new Long(txtIdMovimiento.getValue().toString()); + entity = BusinessDelegatorView.getCpMovimiento(idMovimiento); + } catch (Exception e) { + // TODO: handle exception + } + + if (entity == null) { + txtDescripcionMovimiento.setDisabled(false); + txtObservaciones.setDisabled(false); + txtIdGrupoMovimiento_CpGrupoMovimiento.setDisabled(false); + txtIdUsuario_CpUsuarios.setDisabled(false); + txtIdMovimiento.setDisabled(false); + btnSave.setDisabled(false); + btnDelete.setDisabled(true); + btnModify.setDisabled(true); + btnClear.setDisabled(false); + } else { + txtDescripcionMovimiento.setValue(entity.getDescripcionMovimiento()); + txtDescripcionMovimiento.setDisabled(false); + txtObservaciones.setValue(entity.getObservaciones()); + txtObservaciones.setDisabled(false); + txtIdGrupoMovimiento_CpGrupoMovimiento.setValue(entity.getCpGrupoMovimiento() + .getIdGrupoMovimiento()); + txtIdGrupoMovimiento_CpGrupoMovimiento.setDisabled(false); + txtIdUsuario_CpUsuarios.setValue(entity.getCpUsuarios() + .getIdUsuario()); + txtIdUsuario_CpUsuarios.setDisabled(false); + txtIdMovimiento.setValue(entity.getIdMovimiento()); + txtIdMovimiento.setDisabled(true); + btnSave.setDisabled(true); + btnDelete.setDisabled(false); + btnModify.setDisabled(false); + btnClear.setDisabled(false); + } + } + + public String action_save() { + try { + BusinessDelegatorView.saveCpMovimiento(FacesUtils.checkString( + txtDescripcionMovimiento), + FacesUtils.checkLong(txtIdMovimiento), + FacesUtils.checkString(txtObservaciones), + FacesUtils.checkLong(txtIdGrupoMovimiento_CpGrupoMovimiento), + FacesUtils.checkLong(txtIdUsuario_CpUsuarios)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_save_withoutId() { + + try { + BusinessDelegatorView.saveCpMovimientoWithoutId(FacesUtils.checkString( + txtDescripcionMovimiento), + "N", + slctGrupoMovimiento, + 11L); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_delete() { + try { + BusinessDelegatorView.deleteCpMovimiento(FacesUtils.checkLong( + txtIdMovimiento)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modify() { + try { + BusinessDelegatorView.updateCpMovimiento(FacesUtils.checkString( + txtDescripcionMovimiento), + FacesUtils.checkLong(txtIdMovimiento), + FacesUtils.checkString(txtObservaciones), + FacesUtils.checkLong(txtIdGrupoMovimiento_CpGrupoMovimiento), + FacesUtils.checkLong(txtIdUsuario_CpUsuarios)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + action_clear(); + } catch (Exception e) { + data = null; + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String actionDeleteDataTableEditable() { + try { + if (txtIdMovimiento == null) { + txtIdMovimiento = new InputText(); + } + + txtIdMovimiento.setValue(selectedCpMovimiento.getIdMovimiento()); + + BusinessDelegatorView.deleteCpMovimiento(FacesUtils.checkLong( + txtIdMovimiento)); + data.remove(selectedCpMovimiento); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modifyWitDTO(String descripcionMovimiento, + Long idMovimiento, String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception { + try { + BusinessDelegatorView.updateCpMovimiento(descripcionMovimiento, + idMovimiento, observaciones, + idGrupoMovimiento_CpGrupoMovimiento, idUsuario_CpUsuarios); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + } catch (Exception e) { + //renderManager.getOnDemandRenderer("CpMovimientoView").requestRender(); + FacesUtils.addErrorMessage(e.getMessage()); + throw e; + } + + return ""; + } + + public InputText getTxtDescripcionMovimiento() { + return txtDescripcionMovimiento; + } + + public void setTxtDescripcionMovimiento(InputText txtDescripcionMovimiento) { + this.txtDescripcionMovimiento = txtDescripcionMovimiento; + } + + public InputText getTxtObservaciones() { + return txtObservaciones; + } + + public void setTxtObservaciones(InputText txtObservaciones) { + this.txtObservaciones = txtObservaciones; + } + + public InputText getTxtIdGrupoMovimiento_CpGrupoMovimiento() { + return txtIdGrupoMovimiento_CpGrupoMovimiento; + } + + public void setTxtIdGrupoMovimiento_CpGrupoMovimiento( + InputText txtIdGrupoMovimiento_CpGrupoMovimiento) { + this.txtIdGrupoMovimiento_CpGrupoMovimiento = txtIdGrupoMovimiento_CpGrupoMovimiento; + } + + public InputText getTxtIdUsuario_CpUsuarios() { + return txtIdUsuario_CpUsuarios; + } + + public void setTxtIdUsuario_CpUsuarios(InputText txtIdUsuario_CpUsuarios) { + this.txtIdUsuario_CpUsuarios = txtIdUsuario_CpUsuarios; + } + + public InputText getTxtIdMovimiento() { + return txtIdMovimiento; + } + + public void setTxtIdMovimiento(InputText txtIdMovimiento) { + this.txtIdMovimiento = txtIdMovimiento; + } + + public List getData() { + try { + if (data == null) { + data = BusinessDelegatorView.getDataCpMovimiento(); + } + } catch (Exception e) { + e.printStackTrace(); + } + + return data; + } + + public void setData(List cpMovimientoDTO) { + this.data = cpMovimientoDTO; + } + + public CpMovimientoDTO getSelectedCpMovimiento() { + return selectedCpMovimiento; + } + + public void setSelectedCpMovimiento(CpMovimientoDTO cpMovimiento) { + this.selectedCpMovimiento = cpMovimiento; + } + + public CommandButton getBtnSave() { + return btnSave; + } + + public void setBtnSave(CommandButton btnSave) { + this.btnSave = btnSave; + } + + public CommandButton getBtnModify() { + return btnModify; + } + + public void setBtnModify(CommandButton btnModify) { + this.btnModify = btnModify; + } + + public CommandButton getBtnDelete() { + return btnDelete; + } + + public void setBtnDelete(CommandButton btnDelete) { + this.btnDelete = btnDelete; + } + + public CommandButton getBtnClear() { + return btnClear; + } + + public void setBtnClear(CommandButton btnClear) { + this.btnClear = btnClear; + } + + public TimeZone getTimeZone() { + return java.util.TimeZone.getDefault(); + } + + + public Long getSlctTipoMovimiento() { + return slctTipoMovimiento; + } + + public void setSlctTipoMovimiento(Long slctTipoMovimiento) { + this.slctTipoMovimiento = slctTipoMovimiento; + } + + public Long getSlctGrupoMovimiento() { + return slctGrupoMovimiento; + } + + public void setSlctGrupoMovimiento(Long slctGrupoMovimiento) { + this.slctGrupoMovimiento = slctGrupoMovimiento; + } + public void listener_grupoMovimiento(){ + // gm = Integer.valueOf(this.getSlctTipoMovimiento()).intValue(); + gm = this.getSlctTipoMovimiento(); + } + public List getListGrupoMovimento() { + try { + Object[] arr={"cpTipoMovimiento",false,gm,"="}; + List lista=BusinessDelegatorView.findByCriteriaInCpGrupoMovimiento(arr, null, null) ; + listGrupoMovimento=new ArrayList(); + listGrupoMovimento.add(new SelectItem("-1", "[SELECCIONE..]")); + for (CpGrupoMovimiento cpGrupoMovimiento : lista) { + listGrupoMovimento.add(new SelectItem(cpGrupoMovimiento.getIdGrupoMovimiento(),cpGrupoMovimiento.getDescripcion())); + } + } catch (Exception e) { + + e.printStackTrace(); + } + + return listGrupoMovimento; + } + + + public List getListMeses() { + try { + listMeses=new ArrayList(); + listMeses.add(new SelectItem(1,"ENERO")); + listMeses.add(new SelectItem(2,"FEBRERO")); + listMeses.add(new SelectItem(3,"MARZO")); + listMeses.add(new SelectItem(4,"ABRIL")); + listMeses.add(new SelectItem(5,"MAYO")); + listMeses.add(new SelectItem(6,"JUNIO")); + listMeses.add(new SelectItem(7,"JULIO")); + listMeses.add(new SelectItem(8,"AGOSTO")); + listMeses.add(new SelectItem(9,"SEPTIEMBRE")); + listMeses.add(new SelectItem(10,"OCTUBRE")); + listMeses.add(new SelectItem(11,"NOVIEMBRE")); + listMeses.add(new SelectItem(12,"DICIEMBRE")); + + + } catch (Exception e) { + e.printStackTrace(); + } + return listMeses; + } + + public void setListMeses(List listMeses) { + this.listMeses = listMeses; + } + + public void setListGrupoMovimento(List listGrupoMovimento) { + this.listGrupoMovimento = listGrupoMovimento; + } + + public List getSlctCheckMeses() { + return slctCheckMeses; + } + + public void setSlctCheckMeses(List slctCheckMeses) { + this.slctCheckMeses = slctCheckMeses; + } + + public InputText getTxtAnnoAplica() { + return txtAnnoAplica; + } + + public void setTxtAnnoAplica(InputText txtAnnoAplica) { + this.txtAnnoAplica = txtAnnoAplica; + } + + public boolean isEnero() { + return enero; + } + + public void setEnero(boolean enero) { + this.enero = enero; + } + + public boolean isFebrero() { + return febrero; + } + + public void setFebrero(boolean febrero) { + this.febrero = febrero; + } + + public Long getAnnoAplica() { + return annoAplica; + } + + public void setAnnoAplica(Long annoAplica) { + this.annoAplica = annoAplica; + } + + public boolean isMarzo() { + return marzo; + } + + public void setMarzo(boolean marzo) { + this.marzo = marzo; + } + + public boolean isAbril() { + return abril; + } + + public void setAbril(boolean abril) { + this.abril = abril; + } + + public boolean isMayo() { + return mayo; + } + + public void setMayo(boolean mayo) { + this.mayo = mayo; + } + + public boolean isJunio() { + return junio; + } + + public void setJunio(boolean junio) { + this.junio = junio; + } + + public boolean isJulio() { + return julio; + } + + public void setJulio(boolean julio) { + this.julio = julio; + } + + public boolean isAgosto() { + return agosto; + } + + public void setAgosto(boolean agosto) { + this.agosto = agosto; + } + + public boolean isSeptiembre() { + return septiembre; + } + + public void setSeptiembre(boolean septiembre) { + this.septiembre = septiembre; + } + + public boolean isOctubre() { + return octubre; + } + + public void setOctubre(boolean octubre) { + this.octubre = octubre; + } + + public boolean isNoviembre() { + return noviembre; + } + + public void setNoviembre(boolean noviembre) { + this.noviembre = noviembre; + } + + public boolean isDiciembre() { + return diciembre; + } + + public void setDiciembre(boolean diciembre) { + this.diciembre = diciembre; + } + + + +// public SelectBooleanCheckbox getCheckEnero() { +// return checkEnero; +// } +// +// public void setCheckEnero(SelectBooleanCheckbox checkEnero) { +// this.checkEnero = checkEnero; +// } + + public Long numeroMes(){ + Long mes = 0L; + if(enero) + mes=1L; + if(febrero) + mes=2L; + if(marzo) + mes=3L; + if(abril) + mes=4L; + if(mayo) + mes=5L; + if(junio) + mes=6L; + if(julio) + mes=7L; + if(agosto) + mes=8L; + if(septiembre) + mes=9L; + if(octubre) + mes=10L; + if(noviembre) + mes=11L; + if(diciembre) + mes=12L; + return mes; + } + + public String action_check_save(Long mesSelected) { + try{ + BusinessDelegatorView.saveCpDetalleMovimientoWithOutId( + annoAplica, new Date(), + mesSelected, + "I", + null, + null, + null, + selectedCpMovimiento.getIdMovimiento()); + // FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + // FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(summary)); + } catch (Exception ex) { + FacesUtils.addErrorMessage(ex.getMessage()); + + } + return ""; + } + + public String action_check_delete(Long mesSelected){ + + try { + Object[] arr={"cpMovimiento",false,selectedCpMovimiento.getIdMovimiento(),"=", + "anno",false,annoAplica,"=", + "mes",false,mesSelected,"="}; + + List lista = new ArrayList(); + lista=BusinessDelegatorView.findByCriteriaInCpDetalleMovimiento(arr, null, null) ; + for (CpDetalleMovimiento cpDetalleMovimiento : lista) { + BusinessDelegatorView.deleteCpDetalleMovimiento(cpDetalleMovimiento.getIdDetalleMovimiento()); + } + + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + return ""; + } + + public List getLstMovAplica() { + lstMovAplica = new ArrayList(); + try{ + for (CpMovimientoDTO cpMovimientoDTO : this.getData()) { + MovimientoAplica movAplica = new MovimientoAplica(); + movAplica.setIdMovimiento(cpMovimientoDTO.getIdMovimiento()); + movAplica.setDescripcionMovimiento(cpMovimientoDTO.getDescripcionMovimiento()); + movAplica.setIdGrupoMovimiento_CpGrupoMovimiento(cpMovimientoDTO.getIdGrupoMovimiento_CpGrupoMovimiento()); + movAplica.setDescripcionGrupo(cpMovimientoDTO.getDescripcionGrupo()); + movAplica.setIdUsuario_CpUsuarios(cpMovimientoDTO.getIdUsuario_CpUsuarios()); + movAplica.setObservaciones(cpMovimientoDTO.getObservaciones()); + + for(Long mes=1L;mes<=12;mes++){ + Object[] arr={"cpMovimiento",false,cpMovimientoDTO.getIdMovimiento(),"=", + "anno",false,annoAplica,"=", + "mes",false,mes,"="}; + List lista = new ArrayList(); + lista=BusinessDelegatorView.findByCriteriaInCpDetalleMovimiento(arr, null, null) ; + if(mes == 1L){ + if(lista.size()>0){ + movAplica.setEnero(true); + } else { + movAplica.setEnero(false); + } + } + if(mes == 2L){ + if(lista.size()>0){ + movAplica.setFebrero(true); + } else { + movAplica.setFebrero(false); + } + } + if(mes == 3L){ + if(lista.size()>0){ + movAplica.setMarzo(true); + } else { + movAplica.setMarzo(false); + } + } + if(mes == 4L){ + if(lista.size()>0){ + movAplica.setAbril(true); + } else { + movAplica.setAbril(false); + } + } + if(mes == 5L){ + if(lista.size()>0){ + movAplica.setMayo(true); + } else { + movAplica.setMayo(false); + } + } + if(mes == 6L){ + if(lista.size()>0){ + movAplica.setJunio(true); + } else { + movAplica.setJunio(false); + } + } + if(mes == 7L){ + if(lista.size()>0){ + movAplica.setJulio(true); + } else { + movAplica.setJulio(false); + } + } + if(mes == 8L){ + if(lista.size()>0){ + movAplica.setAgosto(true); + } else { + movAplica.setAgosto(false); + } + } + if(mes == 9L){ + if(lista.size()>0){ + movAplica.setSeptiembre(true); + } else { + movAplica.setSeptiembre(false); + } + } + if(mes == 10L){ + if(lista.size()>0){ + movAplica.setOctubre(true); + } else { + movAplica.setOctubre(false); + } + } + if(mes == 11L){ + if(lista.size()>0){ + movAplica.setNoviembre(true); + } else { + movAplica.setNoviembre(false); + } + } + if(mes == 12L){ + if(lista.size()>0){ + movAplica.setDiciembre(true); + } else { + movAplica.setDiciembre(false); + } + } + } + lstMovAplica.add(movAplica); + } + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + return lstMovAplica; + + } + + public void setLstMovAplica(List lstMovAplica) { + this.lstMovAplica = lstMovAplica; + } + + + +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpTipoMovimientoView.java b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpTipoMovimientoView.java new file mode 100644 index 0000000..95b65c5 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpTipoMovimientoView.java @@ -0,0 +1,305 @@ +package org.zathura.cuentas.presentation.backingBeans; + +import org.primefaces.component.calendar.*; +import org.primefaces.component.commandbutton.CommandButton; +import org.primefaces.component.inputtext.InputText; + +import org.primefaces.event.DateSelectEvent; +import org.primefaces.event.RowEditEvent; + +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpTipoMovimientoDTO; +import org.zathura.cuentas.presentation.businessDelegate.BusinessDelegatorView; +import org.zathura.cuentas.utilities.*; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.TimeZone; + +import javax.faces.application.FacesMessage; +import javax.faces.context.FacesContext; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpTipoMovimientoView { + private InputText txtDescripcion; + private InputText txtObservacion; + private InputText txtIdTipoMovimiento; + private CommandButton btnSave; + private CommandButton btnModify; + private CommandButton btnDelete; + private CommandButton btnClear; + private List data; + private CpTipoMovimientoDTO selectedCpTipoMovimiento; + + public CpTipoMovimientoView() { + super(); + } + + public void rowEventListener(RowEditEvent e) { + try { + CpTipoMovimientoDTO cpTipoMovimientoDTO = (CpTipoMovimientoDTO) e.getObject(); + + if (txtDescripcion == null) { + txtDescripcion = new InputText(); + } + + txtDescripcion.setValue(cpTipoMovimientoDTO.getDescripcion()); + + if (txtObservacion == null) { + txtObservacion = new InputText(); + } + + txtObservacion.setValue(cpTipoMovimientoDTO.getObservacion()); + + if (txtIdTipoMovimiento == null) { + txtIdTipoMovimiento = new InputText(); + } + + txtIdTipoMovimiento.setValue(cpTipoMovimientoDTO.getIdTipoMovimiento()); + + action_modify(); + } catch (Exception ex) { + } + } + + public String action_clear() { + if (txtDescripcion != null) { + txtDescripcion.setValue(null); + txtDescripcion.setDisabled(true); + } + + if (txtObservacion != null) { + txtObservacion.setValue(null); + txtObservacion.setDisabled(true); + } + + if (txtIdTipoMovimiento != null) { + txtIdTipoMovimiento.setValue(null); + txtIdTipoMovimiento.setDisabled(false); + } + + if (btnSave != null) { + btnSave.setDisabled(true); + } + + if (btnDelete != null) { + btnDelete.setDisabled(true); + } + + if (btnModify != null) { + btnModify.setDisabled(true); + } + + if (btnClear != null) { + btnClear.setDisabled(false); + } + + return ""; + } + + public void listener_txtId() { + CpTipoMovimiento entity = null; + + try { + Long idTipoMovimiento = new Long(txtIdTipoMovimiento.getValue() + .toString()); + entity = BusinessDelegatorView.getCpTipoMovimiento(idTipoMovimiento); + } catch (Exception e) { + // TODO: handle exception + } + + if (entity == null) { + txtDescripcion.setDisabled(false); + txtObservacion.setDisabled(false); + txtIdTipoMovimiento.setDisabled(false); + btnSave.setDisabled(false); + btnDelete.setDisabled(true); + btnModify.setDisabled(true); + btnClear.setDisabled(false); + } else { + txtDescripcion.setValue(entity.getDescripcion()); + txtDescripcion.setDisabled(false); + txtObservacion.setValue(entity.getObservacion()); + txtObservacion.setDisabled(false); + txtIdTipoMovimiento.setValue(entity.getIdTipoMovimiento()); + txtIdTipoMovimiento.setDisabled(true); + btnSave.setDisabled(true); + btnDelete.setDisabled(false); + btnModify.setDisabled(false); + btnClear.setDisabled(false); + } + } + + public String action_save() { + try { + BusinessDelegatorView.saveCpTipoMovimiento(FacesUtils.checkString( + txtDescripcion), FacesUtils.checkLong(txtIdTipoMovimiento), + FacesUtils.checkString(txtObservacion)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_delete() { + try { + BusinessDelegatorView.deleteCpTipoMovimiento(FacesUtils.checkLong( + txtIdTipoMovimiento)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modify() { + try { + BusinessDelegatorView.updateCpTipoMovimiento(FacesUtils.checkString( + txtDescripcion), FacesUtils.checkLong(txtIdTipoMovimiento), + FacesUtils.checkString(txtObservacion)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + action_clear(); + } catch (Exception e) { + data = null; + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String actionDeleteDataTableEditable() { + try { + if (txtIdTipoMovimiento == null) { + txtIdTipoMovimiento = new InputText(); + } + + txtIdTipoMovimiento.setValue(selectedCpTipoMovimiento.getIdTipoMovimiento()); + + BusinessDelegatorView.deleteCpTipoMovimiento(FacesUtils.checkLong( + txtIdTipoMovimiento)); + data.remove(selectedCpTipoMovimiento); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modifyWitDTO(String descripcion, + Long idTipoMovimiento, String observacion) throws Exception { + try { + BusinessDelegatorView.updateCpTipoMovimiento(descripcion, + idTipoMovimiento, observacion); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + } catch (Exception e) { + //renderManager.getOnDemandRenderer("CpTipoMovimientoView").requestRender(); + FacesUtils.addErrorMessage(e.getMessage()); + throw e; + } + + return ""; + } + + public InputText getTxtDescripcion() { + return txtDescripcion; + } + + public void setTxtDescripcion(InputText txtDescripcion) { + this.txtDescripcion = txtDescripcion; + } + + public InputText getTxtObservacion() { + return txtObservacion; + } + + public void setTxtObservacion(InputText txtObservacion) { + this.txtObservacion = txtObservacion; + } + + public InputText getTxtIdTipoMovimiento() { + return txtIdTipoMovimiento; + } + + public void setTxtIdTipoMovimiento(InputText txtIdTipoMovimiento) { + this.txtIdTipoMovimiento = txtIdTipoMovimiento; + } + + public List getData() { + try { + if (data == null) { + data = BusinessDelegatorView.getDataCpTipoMovimiento(); + } + } catch (Exception e) { + e.printStackTrace(); + } + + return data; + } + + public void setData(List cpTipoMovimientoDTO) { + this.data = cpTipoMovimientoDTO; + } + + public CpTipoMovimientoDTO getSelectedCpTipoMovimiento() { + return selectedCpTipoMovimiento; + } + + public void setSelectedCpTipoMovimiento( + CpTipoMovimientoDTO cpTipoMovimiento) { + this.selectedCpTipoMovimiento = cpTipoMovimiento; + } + + public CommandButton getBtnSave() { + return btnSave; + } + + public void setBtnSave(CommandButton btnSave) { + this.btnSave = btnSave; + } + + public CommandButton getBtnModify() { + return btnModify; + } + + public void setBtnModify(CommandButton btnModify) { + this.btnModify = btnModify; + } + + public CommandButton getBtnDelete() { + return btnDelete; + } + + public void setBtnDelete(CommandButton btnDelete) { + this.btnDelete = btnDelete; + } + + public CommandButton getBtnClear() { + return btnClear; + } + + public void setBtnClear(CommandButton btnClear) { + this.btnClear = btnClear; + } + + public TimeZone getTimeZone() { + return java.util.TimeZone.getDefault(); + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpUsuariosView.java b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpUsuariosView.java new file mode 100644 index 0000000..3e96e26 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpUsuariosView.java @@ -0,0 +1,429 @@ +package org.zathura.cuentas.presentation.backingBeans; + +import org.primefaces.component.calendar.*; +import org.primefaces.component.commandbutton.CommandButton; +import org.primefaces.component.inputtext.InputText; + +import org.primefaces.event.DateSelectEvent; +import org.primefaces.event.RowEditEvent; + +import org.zathura.cuentas.exceptions.*; +import org.zathura.cuentas.personales.*; +import org.zathura.cuentas.personales.dto.CpUsuariosDTO; +import org.zathura.cuentas.presentation.businessDelegate.BusinessDelegatorView; +import org.zathura.cuentas.utilities.*; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Set; +import java.util.TimeZone; + +import javax.faces.application.FacesMessage; +import javax.faces.context.FacesContext; + + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura + * + */ +public class CpUsuariosView { + private InputText txtActivo; + private InputText txtApellido; + private InputText txtContrasena; + private InputText txtCorreo; + private InputText txtMovil; + private InputText txtNombre; + private InputText txtObservaciones; + private InputText txtIdUsuario; + private CommandButton btnSave; + private CommandButton btnModify; + private CommandButton btnDelete; + private CommandButton btnClear; + private List data; + private CpUsuariosDTO selectedCpUsuarios; + + public CpUsuariosView() { + super(); + } + + public void rowEventListener(RowEditEvent e) { + try { + CpUsuariosDTO cpUsuariosDTO = (CpUsuariosDTO) e.getObject(); + + if (txtActivo == null) { + txtActivo = new InputText(); + } + + txtActivo.setValue(cpUsuariosDTO.getActivo()); + + if (txtApellido == null) { + txtApellido = new InputText(); + } + + txtApellido.setValue(cpUsuariosDTO.getApellido()); + + if (txtContrasena == null) { + txtContrasena = new InputText(); + } + + txtContrasena.setValue(cpUsuariosDTO.getContrasena()); + + if (txtCorreo == null) { + txtCorreo = new InputText(); + } + + txtCorreo.setValue(cpUsuariosDTO.getCorreo()); + + if (txtMovil == null) { + txtMovil = new InputText(); + } + + txtMovil.setValue(cpUsuariosDTO.getMovil()); + + if (txtNombre == null) { + txtNombre = new InputText(); + } + + txtNombre.setValue(cpUsuariosDTO.getNombre()); + + if (txtObservaciones == null) { + txtObservaciones = new InputText(); + } + + txtObservaciones.setValue(cpUsuariosDTO.getObservaciones()); + + if (txtIdUsuario == null) { + txtIdUsuario = new InputText(); + } + + txtIdUsuario.setValue(cpUsuariosDTO.getIdUsuario()); + + action_modify(); + } catch (Exception ex) { + } + } + + public String action_clear() { + if (txtActivo != null) { + txtActivo.setValue(null); + txtActivo.setDisabled(true); + } + + if (txtApellido != null) { + txtApellido.setValue(null); + txtApellido.setDisabled(true); + } + + if (txtContrasena != null) { + txtContrasena.setValue(null); + txtContrasena.setDisabled(true); + } + + if (txtCorreo != null) { + txtCorreo.setValue(null); + txtCorreo.setDisabled(true); + } + + if (txtMovil != null) { + txtMovil.setValue(null); + txtMovil.setDisabled(true); + } + + if (txtNombre != null) { + txtNombre.setValue(null); + txtNombre.setDisabled(true); + } + + if (txtObservaciones != null) { + txtObservaciones.setValue(null); + txtObservaciones.setDisabled(true); + } + + if (txtIdUsuario != null) { + txtIdUsuario.setValue(null); + txtIdUsuario.setDisabled(false); + } + + if (btnSave != null) { + btnSave.setDisabled(true); + } + + if (btnDelete != null) { + btnDelete.setDisabled(true); + } + + if (btnModify != null) { + btnModify.setDisabled(true); + } + + if (btnClear != null) { + btnClear.setDisabled(false); + } + + return ""; + } + + public void listener_txtId() { + CpUsuarios entity = null; + + try { + Long idUsuario = new Long(txtIdUsuario.getValue().toString()); + entity = BusinessDelegatorView.getCpUsuarios(idUsuario); + } catch (Exception e) { + // TODO: handle exception + } + + if (entity == null) { + txtActivo.setDisabled(false); + txtApellido.setDisabled(false); + txtContrasena.setDisabled(false); + txtCorreo.setDisabled(false); + txtMovil.setDisabled(false); + txtNombre.setDisabled(false); + txtObservaciones.setDisabled(false); + txtIdUsuario.setDisabled(false); + btnSave.setDisabled(false); + btnDelete.setDisabled(true); + btnModify.setDisabled(true); + btnClear.setDisabled(false); + } else { + txtActivo.setValue(entity.getActivo()); + txtActivo.setDisabled(false); + txtApellido.setValue(entity.getApellido()); + txtApellido.setDisabled(false); + txtContrasena.setValue(entity.getContrasena()); + txtContrasena.setDisabled(false); + txtCorreo.setValue(entity.getCorreo()); + txtCorreo.setDisabled(false); + txtMovil.setValue(entity.getMovil()); + txtMovil.setDisabled(false); + txtNombre.setValue(entity.getNombre()); + txtNombre.setDisabled(false); + txtObservaciones.setValue(entity.getObservaciones()); + txtObservaciones.setDisabled(false); + txtIdUsuario.setValue(entity.getIdUsuario()); + txtIdUsuario.setDisabled(true); + btnSave.setDisabled(true); + btnDelete.setDisabled(false); + btnModify.setDisabled(false); + btnClear.setDisabled(false); + } + } + + public String action_save() { + try { + BusinessDelegatorView.saveCpUsuarios(FacesUtils.checkString( + txtActivo), FacesUtils.checkString(txtApellido), + FacesUtils.checkString(txtContrasena), + FacesUtils.checkString(txtCorreo), + FacesUtils.checkLong(txtIdUsuario), + FacesUtils.checkLong(txtMovil), + FacesUtils.checkString(txtNombre), + FacesUtils.checkString(txtObservaciones)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYSAVED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_delete() { + try { + BusinessDelegatorView.deleteCpUsuarios(FacesUtils.checkLong( + txtIdUsuario)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modify() { + try { + BusinessDelegatorView.updateCpUsuarios(FacesUtils.checkString( + txtActivo), FacesUtils.checkString(txtApellido), + FacesUtils.checkString(txtContrasena), + FacesUtils.checkString(txtCorreo), + FacesUtils.checkLong(txtIdUsuario), + FacesUtils.checkLong(txtMovil), + FacesUtils.checkString(txtNombre), + FacesUtils.checkString(txtObservaciones)); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + action_clear(); + } catch (Exception e) { + data = null; + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String actionDeleteDataTableEditable() { + try { + if (txtIdUsuario == null) { + txtIdUsuario = new InputText(); + } + + txtIdUsuario.setValue(selectedCpUsuarios.getIdUsuario()); + + BusinessDelegatorView.deleteCpUsuarios(FacesUtils.checkLong( + txtIdUsuario)); + data.remove(selectedCpUsuarios); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYDELETED); + action_clear(); + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + return ""; + } + + public String action_modifyWitDTO(String activo, String apellido, + String contrasena, String correo, Long idUsuario, Long movil, + String nombre, String observaciones) throws Exception { + try { + BusinessDelegatorView.updateCpUsuarios(activo, apellido, + contrasena, correo, idUsuario, movil, nombre, observaciones); + FacesUtils.addInfoMessage(ZMessManager.ENTITY_SUCCESFULLYMODIFIED); + } catch (Exception e) { + //renderManager.getOnDemandRenderer("CpUsuariosView").requestRender(); + FacesUtils.addErrorMessage(e.getMessage()); + throw e; + } + + return ""; + } + + public InputText getTxtActivo() { + return txtActivo; + } + + public void setTxtActivo(InputText txtActivo) { + this.txtActivo = txtActivo; + } + + public InputText getTxtApellido() { + return txtApellido; + } + + public void setTxtApellido(InputText txtApellido) { + this.txtApellido = txtApellido; + } + + public InputText getTxtContrasena() { + return txtContrasena; + } + + public void setTxtContrasena(InputText txtContrasena) { + this.txtContrasena = txtContrasena; + } + + public InputText getTxtCorreo() { + return txtCorreo; + } + + public void setTxtCorreo(InputText txtCorreo) { + this.txtCorreo = txtCorreo; + } + + public InputText getTxtMovil() { + return txtMovil; + } + + public void setTxtMovil(InputText txtMovil) { + this.txtMovil = txtMovil; + } + + public InputText getTxtNombre() { + return txtNombre; + } + + public void setTxtNombre(InputText txtNombre) { + this.txtNombre = txtNombre; + } + + public InputText getTxtObservaciones() { + return txtObservaciones; + } + + public void setTxtObservaciones(InputText txtObservaciones) { + this.txtObservaciones = txtObservaciones; + } + + public InputText getTxtIdUsuario() { + return txtIdUsuario; + } + + public void setTxtIdUsuario(InputText txtIdUsuario) { + this.txtIdUsuario = txtIdUsuario; + } + + public List getData() { + try { + if (data == null) { + data = BusinessDelegatorView.getDataCpUsuarios(); + } + } catch (Exception e) { + e.printStackTrace(); + } + + return data; + } + + public void setData(List cpUsuariosDTO) { + this.data = cpUsuariosDTO; + } + + public CpUsuariosDTO getSelectedCpUsuarios() { + return selectedCpUsuarios; + } + + public void setSelectedCpUsuarios(CpUsuariosDTO cpUsuarios) { + this.selectedCpUsuarios = cpUsuarios; + } + + public CommandButton getBtnSave() { + return btnSave; + } + + public void setBtnSave(CommandButton btnSave) { + this.btnSave = btnSave; + } + + public CommandButton getBtnModify() { + return btnModify; + } + + public void setBtnModify(CommandButton btnModify) { + this.btnModify = btnModify; + } + + public CommandButton getBtnDelete() { + return btnDelete; + } + + public void setBtnDelete(CommandButton btnDelete) { + this.btnDelete = btnDelete; + } + + public CommandButton getBtnClear() { + return btnClear; + } + + public void setBtnClear(CommandButton btnClear) { + this.btnClear = btnClear; + } + + public TimeZone getTimeZone() { + return java.util.TimeZone.getDefault(); + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/presentation/businessDelegate/BusinessDelegatorView.java b/CuentasPersonales/generado/org/zathura/cuentas/presentation/businessDelegate/BusinessDelegatorView.java new file mode 100644 index 0000000..58d97a7 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/presentation/businessDelegate/BusinessDelegatorView.java @@ -0,0 +1,476 @@ +package org.zathura.cuentas.presentation.businessDelegate; + +import org.zathura.cuentas.personales.CpDetalleMovimiento; +import org.zathura.cuentas.personales.CpGrupoMovimiento; +import org.zathura.cuentas.personales.CpMovimiento; +import org.zathura.cuentas.personales.CpTipoMovimiento; +import org.zathura.cuentas.personales.CpUsuarios; +import org.zathura.cuentas.personales.control.CpDetalleMovimientoLogic; +import org.zathura.cuentas.personales.control.CpGrupoMovimientoLogic; +import org.zathura.cuentas.personales.control.CpMovimientoLogic; +import org.zathura.cuentas.personales.control.CpTipoMovimientoLogic; +import org.zathura.cuentas.personales.control.CpUsuariosLogic; +import org.zathura.cuentas.personales.control.ICpDetalleMovimientoLogic; +import org.zathura.cuentas.personales.control.ICpGrupoMovimientoLogic; +import org.zathura.cuentas.personales.control.ICpMovimientoLogic; +import org.zathura.cuentas.personales.control.ICpTipoMovimientoLogic; +import org.zathura.cuentas.personales.control.ICpUsuariosLogic; +import org.zathura.cuentas.personales.dto.*; + +import java.math.BigDecimal; + +import java.util.Date; +import java.util.List; +import java.util.Set; + + +/** +* Use a Business Delegate to reduce coupling between presentation-tier clients and business services. +* The Business Delegate hides the underlying implementation details of the business service, such as lookup and access details of the EJB architecture. +* +* The Business Delegate acts as a client-side business abstraction; it provides an abstraction for, and thus hides, +* the implementation of the business services. Using a Business Delegate reduces the coupling between presentation-tier clients and +* the system's business services. Depending on the implementation strategy, the Business Delegate may shield clients from possible +* volatility in the implementation of the business service API. Potentially, this reduces the number of changes that must be made to the +* presentation-tier client code when the business service API or its underlying implementation changes. +* +* However, interface methods in the Business Delegate may still require modification if the underlying business service API changes. +* Admittedly, though, it is more likely that changes will be made to the business service rather than to the Business Delegate. +* +* Often, developers are skeptical when a design goal such as abstracting the business layer causes additional upfront work in return +* for future gains. However, using this pattern or its strategies results in only a small amount of additional upfront work and provides +* considerable benefits. The main benefit is hiding the details of the underlying service. For example, the client can become transparent +* to naming and lookup services. The Business Delegate also handles the exceptions from the business services, such as java.rmi.Remote +* exceptions, Java Messages Service (JMS) exceptions and so on. The Business Delegate may intercept such service level exceptions and +* generate application level exceptions instead. Application level exceptions are easier to handle by the clients, and may be user friendly. +* The Business Delegate may also transparently perform any retry or recovery operations necessary in the event of a service failure without +* exposing the client to the problem until it is determined that the problem is not resolvable. These gains present a compelling reason to +* use the pattern. +* +* Another benefit is that the delegate may cache results and references to remote business services. Caching can significantly improve performance, +* because it limits unnecessary and potentially costly round trips over the network. +* +* A Business Delegate uses a component called the Lookup Service. The Lookup Service is responsible for hiding the underlying implementation +* details of the business service lookup code. The Lookup Service may be written as part of the Delegate, but we recommend that it be +* implemented as a separate component, as outlined in the Service Locator pattern (See "Service Locator" on page 368.) +* +* When the Business Delegate is used with a Session Facade, typically there is a one-to-one relationship between the two. +* This one-to-one relationship exists because logic that might have been encapsulated in a Business Delegate relating to its interaction +* with multiple business services (creating a one-to-many relationship) will often be factored back into a Session Facade. +* +* Finally, it should be noted that this pattern could be used to reduce coupling between other tiers, not simply the presentation and the +* business tiers. +* +* @author Zathura Code Generator http://code.google.com/p/zathura +* +*/ +public class BusinessDelegatorView { + private BusinessDelegatorView() { + } + + public static List getCpDetalleMovimiento() + throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + + return cpDetalleMovimientoLogic.getCpDetalleMovimiento(); + } + + public static void saveCpDetalleMovimiento(Long anno, Date fehcaRegistro, + Long idDetalleMovimiento, Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + cpDetalleMovimientoLogic.saveCpDetalleMovimiento(anno, fehcaRegistro, + idDetalleMovimiento, mes, observaciones, pendiente, + valorMovimiento, valorPago, idMovimiento_CpMovimiento); + } + + public static void saveCpDetalleMovimientoWithOutId(Long anno, Date fehcaRegistro, + Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + cpDetalleMovimientoLogic.saveCpDetalleMovimientoWithOutId(anno, fehcaRegistro, + mes, observaciones, pendiente, + valorMovimiento, valorPago, idMovimiento_CpMovimiento); + } + + public static void deleteCpDetalleMovimiento(Long idDetalleMovimiento) + throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + cpDetalleMovimientoLogic.deleteCpDetalleMovimiento(idDetalleMovimiento); + } + + public static void updateCpDetalleMovimiento(Long anno, Date fehcaRegistro, + Long idDetalleMovimiento, Long mes, String observaciones, + String pendiente, Long valorMovimiento, Long valorPago, + Long idMovimiento_CpMovimiento) throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + cpDetalleMovimientoLogic.updateCpDetalleMovimiento(anno, fehcaRegistro, + idDetalleMovimiento, mes, observaciones, pendiente, + valorMovimiento, valorPago, idMovimiento_CpMovimiento); + } + + public static CpDetalleMovimiento getCpDetalleMovimiento( + Long idDetalleMovimiento) throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + CpDetalleMovimiento cpDetalleMovimiento = null; + + try { + cpDetalleMovimiento = cpDetalleMovimientoLogic.getCpDetalleMovimiento(idDetalleMovimiento); + } catch (Exception e) { + throw e; + } + + return cpDetalleMovimiento; + } + + public static List findByCriteriaInCpDetalleMovimiento( + Object[] variables, Object[] variablesBetween, + Object[] variablesBetweenDates) throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + + return cpDetalleMovimientoLogic.findByCriteria(variables, + variablesBetween, variablesBetweenDates); + } + + public static List findPageCpDetalleMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + + return cpDetalleMovimientoLogic.findPageCpDetalleMovimiento(sortColumnName, + sortAscending, startRow, maxResults); + } + + public static Long findTotalNumberCpDetalleMovimiento() + throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + + return cpDetalleMovimientoLogic.findTotalNumberCpDetalleMovimiento(); + } + + public static List getDataCpDetalleMovimiento() + throws Exception { + ICpDetalleMovimientoLogic cpDetalleMovimientoLogic = new CpDetalleMovimientoLogic(); + + return cpDetalleMovimientoLogic.getDataCpDetalleMovimiento(); + } + + public static List getCpGrupoMovimiento() + throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + + return cpGrupoMovimientoLogic.getCpGrupoMovimiento(); + } + + public static void saveCpGrupoMovimiento(String descripcion, + Long idGrupoMovimiento, String observacion, + Long idTipoMovimiento_CpTipoMovimiento) throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + cpGrupoMovimientoLogic.saveCpGrupoMovimiento(descripcion, + idGrupoMovimiento, observacion, idTipoMovimiento_CpTipoMovimiento); + } + + public static void deleteCpGrupoMovimiento(Long idGrupoMovimiento) + throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + cpGrupoMovimientoLogic.deleteCpGrupoMovimiento(idGrupoMovimiento); + } + + public static void updateCpGrupoMovimiento(String descripcion, + Long idGrupoMovimiento, String observacion, + Long idTipoMovimiento_CpTipoMovimiento) throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + cpGrupoMovimientoLogic.updateCpGrupoMovimiento(descripcion, + idGrupoMovimiento, observacion, idTipoMovimiento_CpTipoMovimiento); + } + + public static CpGrupoMovimiento getCpGrupoMovimiento(Long idGrupoMovimiento) + throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + CpGrupoMovimiento cpGrupoMovimiento = null; + + try { + cpGrupoMovimiento = cpGrupoMovimientoLogic.getCpGrupoMovimiento(idGrupoMovimiento); + } catch (Exception e) { + throw e; + } + + return cpGrupoMovimiento; + } + + public static List findByCriteriaInCpGrupoMovimiento( + Object[] variables, Object[] variablesBetween, + Object[] variablesBetweenDates) throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + + return cpGrupoMovimientoLogic.findByCriteria(variables, + variablesBetween, variablesBetweenDates); + } + + public static List findPageCpGrupoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + + return cpGrupoMovimientoLogic.findPageCpGrupoMovimiento(sortColumnName, + sortAscending, startRow, maxResults); + } + + public static Long findTotalNumberCpGrupoMovimiento() + throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + + return cpGrupoMovimientoLogic.findTotalNumberCpGrupoMovimiento(); + } + + public static List getDataCpGrupoMovimiento() + throws Exception { + ICpGrupoMovimientoLogic cpGrupoMovimientoLogic = new CpGrupoMovimientoLogic(); + + return cpGrupoMovimientoLogic.getDataCpGrupoMovimiento(); + } + + public static List getCpMovimiento() + throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + + return cpMovimientoLogic.getCpMovimiento(); + } + + public static void saveCpMovimiento(String descripcionMovimiento, + Long idMovimiento, String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + cpMovimientoLogic.saveCpMovimiento(descripcionMovimiento, idMovimiento, + observaciones, idGrupoMovimiento_CpGrupoMovimiento, + idUsuario_CpUsuarios); + } + + /** + * Guarda Movimiento siningresar Idmovimiento, el id se genera automaticmanete a traves de una secuencia invocada desde anotation + * @param descripcionMovimiento + * @param observaciones + * @param idGrupoMovimiento_CpGrupoMovimiento + * @param idUsuario_CpUsuarios + * @throws Exception + */ + public static void saveCpMovimientoWithoutId(String descripcionMovimiento, + String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + cpMovimientoLogic.saveCpMovimientoWithoutId(descripcionMovimiento, + observaciones, idGrupoMovimiento_CpGrupoMovimiento, + idUsuario_CpUsuarios); + } + + public static void deleteCpMovimiento(Long idMovimiento) + throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + cpMovimientoLogic.deleteCpMovimiento(idMovimiento); + } + + public static void updateCpMovimiento(String descripcionMovimiento, + Long idMovimiento, String observaciones, + Long idGrupoMovimiento_CpGrupoMovimiento, Long idUsuario_CpUsuarios) + throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + cpMovimientoLogic.updateCpMovimiento(descripcionMovimiento, + idMovimiento, observaciones, idGrupoMovimiento_CpGrupoMovimiento, + idUsuario_CpUsuarios); + } + + public static CpMovimiento getCpMovimiento(Long idMovimiento) + throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + CpMovimiento cpMovimiento = null; + + try { + cpMovimiento = cpMovimientoLogic.getCpMovimiento(idMovimiento); + } catch (Exception e) { + throw e; + } + + return cpMovimiento; + } + + public static List findByCriteriaInCpMovimiento( + Object[] variables, Object[] variablesBetween, + Object[] variablesBetweenDates) throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + + return cpMovimientoLogic.findByCriteria(variables, variablesBetween, + variablesBetweenDates); + } + + public static List findPageCpMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + + return cpMovimientoLogic.findPageCpMovimiento(sortColumnName, + sortAscending, startRow, maxResults); + } + + public static Long findTotalNumberCpMovimiento() throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + + return cpMovimientoLogic.findTotalNumberCpMovimiento(); + } + + public static List getDataCpMovimiento() + throws Exception { + ICpMovimientoLogic cpMovimientoLogic = new CpMovimientoLogic(); + + return cpMovimientoLogic.getDataCpMovimiento(); + } + + public static List getCpTipoMovimiento() + throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + + return cpTipoMovimientoLogic.getCpTipoMovimiento(); + } + + public static void saveCpTipoMovimiento(String descripcion, + Long idTipoMovimiento, String observacion) throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + cpTipoMovimientoLogic.saveCpTipoMovimiento(descripcion, + idTipoMovimiento, observacion); + } + + public static void deleteCpTipoMovimiento(Long idTipoMovimiento) + throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + cpTipoMovimientoLogic.deleteCpTipoMovimiento(idTipoMovimiento); + } + + public static void updateCpTipoMovimiento(String descripcion, + Long idTipoMovimiento, String observacion) throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + cpTipoMovimientoLogic.updateCpTipoMovimiento(descripcion, + idTipoMovimiento, observacion); + } + + public static CpTipoMovimiento getCpTipoMovimiento(Long idTipoMovimiento) + throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + CpTipoMovimiento cpTipoMovimiento = null; + + try { + cpTipoMovimiento = cpTipoMovimientoLogic.getCpTipoMovimiento(idTipoMovimiento); + } catch (Exception e) { + throw e; + } + + return cpTipoMovimiento; + } + + public static List findByCriteriaInCpTipoMovimiento( + Object[] variables, Object[] variablesBetween, + Object[] variablesBetweenDates) throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + + return cpTipoMovimientoLogic.findByCriteria(variables, + variablesBetween, variablesBetweenDates); + } + + public static List findPageCpTipoMovimiento( + String sortColumnName, boolean sortAscending, int startRow, + int maxResults) throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + + return cpTipoMovimientoLogic.findPageCpTipoMovimiento(sortColumnName, + sortAscending, startRow, maxResults); + } + + public static Long findTotalNumberCpTipoMovimiento() + throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + + return cpTipoMovimientoLogic.findTotalNumberCpTipoMovimiento(); + } + + public static List getDataCpTipoMovimiento() + throws Exception { + ICpTipoMovimientoLogic cpTipoMovimientoLogic = new CpTipoMovimientoLogic(); + + return cpTipoMovimientoLogic.getDataCpTipoMovimiento(); + } + + public static List getCpUsuarios() throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + + return cpUsuariosLogic.getCpUsuarios(); + } + + public static void saveCpUsuarios(String activo, String apellido, + String contrasena, String correo, Long idUsuario, Long movil, + String nombre, String observaciones) throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + cpUsuariosLogic.saveCpUsuarios(activo, apellido, contrasena, correo, + idUsuario, movil, nombre, observaciones); + } + + public static void deleteCpUsuarios(Long idUsuario) + throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + cpUsuariosLogic.deleteCpUsuarios(idUsuario); + } + + public static void updateCpUsuarios(String activo, String apellido, + String contrasena, String correo, Long idUsuario, Long movil, + String nombre, String observaciones) throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + cpUsuariosLogic.updateCpUsuarios(activo, apellido, contrasena, correo, + idUsuario, movil, nombre, observaciones); + } + + public static CpUsuarios getCpUsuarios(Long idUsuario) + throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + CpUsuarios cpUsuarios = null; + + try { + cpUsuarios = cpUsuariosLogic.getCpUsuarios(idUsuario); + } catch (Exception e) { + throw e; + } + + return cpUsuarios; + } + + public static List findByCriteriaInCpUsuarios( + Object[] variables, Object[] variablesBetween, + Object[] variablesBetweenDates) throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + + return cpUsuariosLogic.findByCriteria(variables, variablesBetween, + variablesBetweenDates); + } + + public static List findPageCpUsuarios(String sortColumnName, + boolean sortAscending, int startRow, int maxResults) + throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + + return cpUsuariosLogic.findPageCpUsuarios(sortColumnName, + sortAscending, startRow, maxResults); + } + + public static Long findTotalNumberCpUsuarios() throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + + return cpUsuariosLogic.findTotalNumberCpUsuarios(); + } + + public static List getDataCpUsuarios() + throws Exception { + ICpUsuariosLogic cpUsuariosLogic = new CpUsuariosLogic(); + + return cpUsuariosLogic.getDataCpUsuarios(); + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/utilities/FacesUtils.java b/CuentasPersonales/generado/org/zathura/cuentas/utilities/FacesUtils.java new file mode 100644 index 0000000..859c4ed --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/utilities/FacesUtils.java @@ -0,0 +1,471 @@ +/* + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * "The contents of this file are subject to the Mozilla Public License + * Version 1.1 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL + * + * Software distributed under the License is distributed on an "AS IS" + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + * License for the specific language governing rights and limitations under + * the License. + * + * The Original Code is ICEfaces 1.5 open source software code, released + * November 5, 2006. The Initial Developer of the Original Code is ICEsoft + * Technologies Canada, Corp. Portions created by ICEsoft are Copyright (C) + * 2004-2006 ICEsoft Technologies Canada, Corp. All Rights Reserved. + * + * Contributor(s): _____________________. + * + * Alternatively, the contents of this file may be used under the terms of + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL" + * License), in which case the provisions of the LGPL License are + * applicable instead of those above. If you wish to allow use of your + * version of this file only under the terms of the LGPL License and not to + * allow others to use your version of this file under the MPL, indicate + * your decision by deleting the provisions above and replace them with + * the notice and other provisions required by the LGPL License. If you do + * not delete the provisions above, a recipient may use your version of + * this file under either the MPL or the LGPL License." + * + */ +package org.zathura.cuentas.utilities; + +import org.zathura.cuentas.exceptions.ZMessManager; + +import java.math.BigDecimal; +import java.math.BigInteger; + +import java.util.Date; + +import javax.faces.FactoryFinder; +import javax.faces.application.Application; +import javax.faces.application.ApplicationFactory; +import javax.faces.application.FacesMessage; +import javax.faces.application.ViewHandler; +import javax.faces.component.UIInput; +import javax.faces.component.UIViewRoot; +import javax.faces.context.ExternalContext; +import javax.faces.context.FacesContext; +import javax.faces.el.ValueBinding; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + + +/** + * JSF utilities. + */ +public class FacesUtils { + /** + * Get servlet context. + * + * @return the servlet context + */ + public static ServletContext getServletContext() { + return (ServletContext) FacesContext.getCurrentInstance() + .getExternalContext().getContext(); + } + + public static ExternalContext getExternalContext() { + FacesContext fc = FacesContext.getCurrentInstance(); + + return fc.getExternalContext(); + } + + public static HttpSession getHttpSession(boolean create) { + return (HttpSession) FacesContext.getCurrentInstance() + .getExternalContext().getSession(create); + } + + public static void refresh() { + FacesContext context = FacesContext.getCurrentInstance(); + Application application = context.getApplication(); + ViewHandler viewHandler = application.getViewHandler(); + UIViewRoot viewRoot = viewHandler.createView(context, + context.getViewRoot().getViewId()); + context.setViewRoot(viewRoot); + } + + /** + * Get managed bean based on the bean name. + * + * @param beanName + * the bean name + * @return the managed bean associated with the bean name + */ + public static Object getManagedBean(String beanName) { + // return + // getValueBinding(getJsfEl(beanName)).getValue(FacesContext.getCurrentInstance()); + // ReportBean reportBean = + // (ReportBean)facesContext.getApplication().getVariableResolver().resolveVariable(facesContext, + // "reportBean"); + return FacesContext.getCurrentInstance().getApplication() + .getVariableResolver() + .resolveVariable(FacesContext.getCurrentInstance(), + beanName); + } + + public static Object getManagedBeanFromSession(String beanName) { + return FacesContext.getCurrentInstance().getExternalContext() + .getSessionMap().get(beanName); + } + + /** + * Remove the managed bean based on the bean name. + * + * @param beanName + * the bean name of the managed bean to be removed + */ + public static void resetManagedBean(String beanName) { + getValueBinding(getJsfEl(beanName)) + .setValue(FacesContext.getCurrentInstance(), null); + } + + /** + * Store the managed bean inside the session scope. + * + * @param beanName + * the name of the managed bean to be stored + * @param managedBean + * the managed bean to be stored + */ + public static void setManagedBeanInSession(String beanName, + Object managedBean) { + FacesContext.getCurrentInstance().getExternalContext().getSessionMap() + .put(beanName, managedBean); + } + + /** + * Get parameter value from request scope. + * + * @param name + * the name of the parameter + * @return the parameter value + */ + public static String getRequestParameter(String name) { + return (String) FacesContext.getCurrentInstance().getExternalContext() + .getRequestParameterMap().get(name); + } + + /** + * Add information message. + * + * @param msg + * the information message + */ + public static void addInfoMessage(String msg) { + addInfoMessage(null, msg); + } + + /** + * Add information message to a specific client. + * + * @param clientId + * the client id + * @param msg + * the information message + */ + public static void addInfoMessage(String clientId, String msg) { + FacesContext.getCurrentInstance() + .addMessage(clientId, + new FacesMessage(FacesMessage.SEVERITY_INFO, msg, msg)); + } + + /** + * Add error message. + * + * @param msg + * the error message + */ + public static void addErrorMessage(String msg) { + addErrorMessage(null, msg); + } + + /** + * Add error message to a specific client. + * + * @param clientId + * the client id + * @param msg + * the error message + */ + public static void addErrorMessage(String clientId, String msg) { + FacesContext.getCurrentInstance() + .addMessage(clientId, + new FacesMessage(FacesMessage.SEVERITY_ERROR, msg, msg)); + } + + private static Application getApplication() { + ApplicationFactory appFactory = (ApplicationFactory) FactoryFinder.getFactory(FactoryFinder.APPLICATION_FACTORY); + + return appFactory.getApplication(); + } + + private static ValueBinding getValueBinding(String el) { + return getApplication().createValueBinding(el); + } + + private static HttpServletRequest getServletRequest() { + return (HttpServletRequest) FacesContext.getCurrentInstance() + .getExternalContext() + .getRequest(); + } + + private static Object getElValue(String el) { + return getValueBinding(el).getValue(FacesContext.getCurrentInstance()); + } + + private static String getJsfEl(String value) { + return "#{" + value + "}"; + } + + /** + * + * @return + */ + public static HttpSession getSession() { + return (HttpSession) FacesContext.getCurrentInstance() + .getExternalContext().getSession(true); + } + + /** + * + * @param o + * Put an object in session + */ + public static void putinSession(String name, Object o) { + HttpSession session = (HttpSession) FacesContext.getCurrentInstance() + .getExternalContext() + .getSession(true); + session.setAttribute(name, o); + } + + /** + * + * @param name + * @return object from session + */ + public static Object getfromSession(String name) { + HttpSession session = (HttpSession) FacesContext.getCurrentInstance() + .getExternalContext() + .getSession(false); + + return session.getAttribute(name); + } + + /** + * + * @return + */ + public static HttpServletRequest getRequest() { + return (HttpServletRequest) FacesContext.getCurrentInstance() + .getExternalContext() + .getRequest(); + } + + /** + * + * @param name + * @param o + */ + public static void putinRequest(String name, Object o) { + HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance() + .getExternalContext() + .getRequest(); + request.setAttribute(name, o); + } + + /** + * + * @param name + * @return object from request + */ + public static Object getfromRequest(String name) { + HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance() + .getExternalContext() + .getRequest(); + + return request.getAttribute(name); + } + + public static Long checkLong(Object input) throws ZMessManager { + if (input == null) { + return null; + } + + UIInput inputValue = (UIInput) input; + + if (inputValue.getValue() == null) { + return null; + } + + if ((inputValue.getValue()).equals("")) { + return null; + } + + try { + return new Long(inputValue.getValue().toString()); + } catch (Exception e) { + throw new ZMessManager().new NotValidFieldException(inputValue.getId()); + } + } + + public static String checkString(Object input) throws ZMessManager { + if (input == null) { + return null; + } + + UIInput inputValue = (UIInput) input; + + if (inputValue.getValue() == null) { + return null; + } + + if ((inputValue.getValue()).equals("")) { + return null; + } + + try { + return new String(inputValue.getValue().toString()); + } catch (Exception e) { + throw new ZMessManager().new NotValidFieldException(inputValue.getId()); + } + } + + public static Integer checkInteger(Object input) throws ZMessManager { + if (input == null) { + return null; + } + + UIInput inputValue = (UIInput) input; + + if (inputValue.getValue() == null) { + return null; + } + + if ((inputValue.getValue()).equals("")) { + return null; + } + + try { + return new Integer(inputValue.getValue().toString()); + } catch (Exception e) { + throw new ZMessManager().new NotValidFieldException(inputValue.getId()); + } + } + + public static Double checkDouble(Object input) throws ZMessManager { + if (input == null) { + return null; + } + + UIInput inputValue = (UIInput) input; + + if (inputValue.getValue() == null) { + return null; + } + + if ((inputValue.getValue()).equals("")) { + return null; + } + + try { + return new Double(inputValue.getValue().toString()); + } catch (Exception e) { + throw new ZMessManager().new NotValidFieldException(inputValue.getId()); + } + } + + public static Float checkFloat(Object input) throws ZMessManager { + if (input == null) { + return null; + } + + UIInput inputValue = (UIInput) input; + + if (inputValue.getValue() == null) { + return null; + } + + if ((inputValue.getValue()).equals("")) { + return null; + } + + try { + return new Float(inputValue.getValue().toString()); + } catch (Exception e) { + throw new ZMessManager().new NotValidFieldException(inputValue.getId()); + } + } + + public static Date checkDate(Object input) throws ZMessManager { + if (input == null) { + return null; + } + + UIInput inputValue = (UIInput) input; + + if (inputValue.getValue() == null) { + return null; + } + + if ((inputValue.getValue()).equals("")) { + return null; + } + + try { + return (Date) inputValue.getValue(); + } catch (Exception e) { + throw new ZMessManager().new NotValidFieldException(inputValue.getId()); + } + } + + public static BigInteger checkBigInteger(Object input) + throws ZMessManager { + if (input == null) { + return null; + } + + UIInput inputValue = (UIInput) input; + + if (inputValue.getValue() == null) { + return null; + } + + if ((inputValue.getValue()).equals("")) { + return null; + } + + try { + return new BigInteger(inputValue.getValue().toString()); + } catch (Exception e) { + throw new ZMessManager().new NotValidFieldException(inputValue.getId()); + } + } + + public static BigDecimal checkBigDecimal(Object input) + throws ZMessManager { + if (input == null) { + return null; + } + + UIInput inputValue = (UIInput) input; + + if (inputValue.getValue() == null) { + return null; + } + + if ((inputValue.getValue()).equals("")) { + return null; + } + + try { + return new BigDecimal(inputValue.getValue().toString()); + } catch (Exception e) { + throw new ZMessManager().new NotValidFieldException(inputValue.getId()); + } + } +} diff --git a/CuentasPersonales/generado/org/zathura/cuentas/utilities/Utilities.java b/CuentasPersonales/generado/org/zathura/cuentas/utilities/Utilities.java new file mode 100644 index 0000000..15c3024 --- /dev/null +++ b/CuentasPersonales/generado/org/zathura/cuentas/utilities/Utilities.java @@ -0,0 +1,367 @@ +package org.zathura.cuentas.utilities; + +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.apache.commons.validator.EmailValidator; + +/** + * + * @author Zathura Code Generator http://code.google.com/p/zathura/ + * + */ +public class Utilities { + + public static boolean isNumeric(String word) { + boolean ret = false; + Pattern pat = Pattern.compile("[^0-9',.\\s]"); + Matcher mat = pat.matcher(word); + if (!mat.find()) { + ret = true; + } + return ret; + } + + /** + * + * @param word + * @return Expresion regular "(\\d){1,10}\\.(\\d){1,10}" (\\d)digito + * {1,10}de 1 a 10 caracteres \\. punto + * + */ + public static boolean isDecimal(String word) { + boolean ret = false; + Pattern pat = Pattern.compile("(\\d){1,8}\\.(\\d){0,2}"); + Matcher mat = pat.matcher(word); + if (!mat.find()) { + ret = true; + } + return ret; + // DoubleValidator doubleValidator = new DoubleValidator(); + // return doubleValidator.isValid(word); + } + + public static boolean checkNumberAndCheckWithPrecisionAndScale( + String fieldValue, Integer precision, Integer scale) { + boolean ret = false; + if (fieldValue != null && precision != null && scale != null) { + if (fieldValue.contains("E") && scale != 0) { + String dfString = "# # . # # # # # # # # # # # # # # # #"; + dfString = dfString.replace(" ", ""); + DecimalFormat df = new DecimalFormat(dfString); + fieldValue = df.format(new Double(fieldValue)); + if (fieldValue.length() > 0 && !fieldValue.contains(".")) { + fieldValue = fieldValue + ".0"; + } + } + fieldValue = fieldValue.replace(".", "%"); + String[] spitedFieldValue = fieldValue.split("%"); + if (spitedFieldValue.length == 2 && precision != 0) { + String precisionTmp = spitedFieldValue[0]; + String scaleTmp = spitedFieldValue[1]; + if (!isNumeric(precisionTmp)) { + return false; + } + if (!isNumeric(scaleTmp)) { + return false; + } + if ((precisionTmp.length() <= precision) + && (scaleTmp.length() <= scale)) { + ret = true; + } + } else { + if (spitedFieldValue.length == 1 && precision != 0 + && scale == 0) { + String precisionTmp = spitedFieldValue[0]; + if (!isNumeric(precisionTmp)) { + return false; + } + if ((precisionTmp.length() <= precision)) { + ret = true; + } + } else { + return false; + } + } + } + return ret; + } + + public static boolean checkWordAndCheckWithlength(String word, + Integer length) { + boolean ret = false; + if (word.length() <= length) { + ret = true; + } + return ret; + } + + public static boolean isOnlyLetters(String word) { + boolean ret = false; + Pattern pat = Pattern.compile("[^A-Za-z0-9',.\\s]"); + Matcher mat = pat.matcher(word); + if (!mat.find()) { + ret = true; + } + return ret; + } + + public static String formatDateWithoutTimeInAStringForBetweenWhere( + Date fecha) { + int year = fecha.getYear() + 1900; + int month = fecha.getMonth() + 1; + int day = fecha.getDate(); + String date = "" + year + "-" + month + "-" + day; + return date; + } + + public static boolean validationsList(List list) { + if (list != null) { + if (!list.isEmpty() && list.size() > 0) { + return true; + } else { + return false; + } + } else { + return false; + } + } + + public static boolean validateEmailAddress(String sEmail) { + EmailValidator emailValidator = EmailValidator.getInstance(); + return emailValidator.isValid(sEmail); + } + + /** + * + * @param object + * @param object2 + * @param privateFields + * @return + * @throws Exception + */ + public static boolean matchClasses(Object object, Object object2, + boolean privateFields) throws Exception { + + boolean couldPerformTask = false; + Object paramsObj[] = {}; + + Class tmpClass = object.getClass(); + Class tmpClass2 = object2.getClass(); + + Field field[] = tmpClass.getDeclaredFields(); + Field field2[] = tmpClass2.getDeclaredFields(); + + Method method[] = tmpClass.getMethods(); + Method method2[] = tmpClass2.getMethods(); + + String tmpName = new String(); + String tmpName2 = new String(); + + Field tmpField; + Field tmpField2; + + Method tmpMethod; + Method tmpMethod2; + + Object tmpInfo = new Object(); + Object tmpInfo2 = new Object(); + + Class[] paramTypes = null; + Class[] paramTypes1 = null; + + if (privateFields) { + + try { + if (method != null && method.length > 0) { + + for (int i = 0; i < method.length; i++) { + tmpMethod = method[i]; + tmpMethod2 = method2[i]; + + if (tmpMethod != null && tmpMethod2 != null) { + paramTypes = tmpMethod.getParameterTypes(); + tmpName = tmpMethod.getName().substring(0, 3); + + paramTypes1 = tmpMethod2.getParameterTypes(); + tmpName2 = tmpMethod2.getName().substring(0, 3); + + if (tmpName.equals("get") && tmpName2.equals("get")) { + + tmpInfo = tmpMethod.invoke(object, paramsObj); + tmpInfo2 = tmpMethod2 + .invoke(object2, paramsObj); + + if (tmpInfo != null && tmpInfo2 != null) { + try { + if (tmpInfo.equals(tmpInfo2)) { + couldPerformTask = true; + } else { + return false; + } + } catch (Exception e) { + + if (tmpInfo == tmpInfo2) { + couldPerformTask = true; + } else { + return false; + } + } + } + } + } + } + + } else { + throw new Exception( + "One of the the Classes has no \"get\" methods please check"); + } + } catch (Exception e) { + System.out.println(e.getMessage()); + } + } else { + try { + for (int j = 0; j < field.length; j++) { + tmpField = field[j]; + tmpField2 = field2[j]; + + if (tmpField != null && tmpField2 != null) { + + tmpInfo = tmpField.get(object); + tmpInfo2 = tmpField2.get(object2); + + if (tmpInfo != null && tmpInfo2 != null) { + try { + if (tmpInfo.equals(tmpInfo2)) { + couldPerformTask = true; + } else { + return false; + } + } catch (Exception e) { + + if (tmpInfo == tmpInfo2) { + couldPerformTask = true; + } else { + return false; + } + } + } + } else { + throw new Exception( + "One of the the Classes has no fields methods please check"); + } + } + } catch (IllegalAccessException ea) { + throw new Exception( + "One of the objects you are trying to compare has its fields private please use the method way"); + } catch (Exception e) { + throw e; + } + } + return couldPerformTask; + } + + public String constructQuery(Object[] variables, Object[] variablesBetween, + Object[] variablesBetweenDates) throws Exception { + String where = new String(); + String tempWhere = new String(); + + if (variables != null) { + for (int i = 0; i < variables.length; i++) { + if ((variables[i] != null) && (variables[i + 1] != null) + && (variables[i + 2] != null) + && (variables[i + 3] != null)) { + String variable = (String) variables[i]; + Boolean booVariable = (Boolean) variables[i + 1]; + Object value = variables[i + 2]; + String comparator = (String) variables[i + 3]; + + if (booVariable.booleanValue()) { + tempWhere = (tempWhere.length() == 0) ? ("(model." + + variable + " " + comparator + " \'" + value + "\' )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " \'" + value + "\' )"); + } else { + tempWhere = (tempWhere.length() == 0) ? ("(model." + + variable + " " + comparator + " " + value + " )") + : (tempWhere + " AND (model." + variable + " " + + comparator + " " + value + " )"); + } + } + + i = i + 3; + } + } + + if (variablesBetween != null) { + for (int j = 0; j < variablesBetween.length; j++) { + if ((variablesBetween[j] != null) + && (variablesBetween[j + 1] != null) + && (variablesBetween[j + 2] != null) + && (variablesBetween[j + 3] != null) + && (variablesBetween[j + 4] != null)) { + String variable = (String) variablesBetween[j]; + Object value = variablesBetween[j + 1]; + Object value2 = variablesBetween[j + 2]; + String comparator1 = (String) variablesBetween[j + 3]; + String comparator2 = (String) variablesBetween[j + 4]; + tempWhere = (tempWhere.length() == 0) ? ("(" + value + " " + + comparator1 + " " + variable + " and " + variable + + " " + comparator2 + " " + value2 + " )") + : (tempWhere + " AND (" + value + " " + comparator1 + + " " + variable + " and " + variable + " " + + comparator2 + " " + value2 + " )"); + } + + j = j + 4; + } + } + + if (variablesBetweenDates != null) { + for (int k = 0; k < variablesBetweenDates.length; k++) { + if ((variablesBetweenDates[k] != null) + && (variablesBetweenDates[k + 1] != null) + && (variablesBetweenDates[k + 2] != null)) { + String variable = (String) variablesBetweenDates[k]; + Object object1 = variablesBetweenDates[k + 1]; + Object object2 = variablesBetweenDates[k + 2]; + String value = null; + String value2 = null; + + try { + Date date1 = (Date) object1; + Date date2 = (Date) object2; + value = Utilities + .formatDateWithoutTimeInAStringForBetweenWhere(date1); + value2 = Utilities + .formatDateWithoutTimeInAStringForBetweenWhere(date2); + } catch (Exception e) { + throw e; + } + + tempWhere = (tempWhere.length() == 0) ? ("(model." + + variable + " between \'" + value + "\' and \'" + + value2 + "\')") : (tempWhere + " AND (model." + + variable + " between \'" + value + "\' and \'" + + value2 + "\')"); + } + + k = k + 2; + } + } + + if (tempWhere.length() == 0) { + where = ""; + } else { + where = "where (" + tempWhere + ")"; + } + + return where; + } + +} From 8b24489df4364474750db148a0387c52e3ba889d Mon Sep 17 00:00:00 2001 From: freskoWin Date: Mon, 14 Oct 2013 16:23:39 -0500 Subject: [PATCH 2/2] Se ajusta Jspx en campus para configuracion de fechas del movimieto financiero --- CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml | 6 +- .../backingBeans/CpMovimientoView.java | 289 +- Music_List/.classpath | 8 + Music_List/.mymetadata | 13 + Music_List/.project | 47 + .../.settings/org.eclipse.jdt.core.prefs | 12 + Music_List/WebRoot/META-INF/MANIFEST.MF | 3 + Music_List/WebRoot/WEB-INF/.faces-config.mex | 5 + Music_List/WebRoot/WEB-INF/faces-config.xml | 10 + Music_List/WebRoot/WEB-INF/web.xml | 73 + Music_List/WebRoot/index.jsp | 26 + Music_List/WebRoot/whatsgoingon.jspx | 44 + .../rime/css-images/PnlClpsblCnt_bullet.gif | Bin 0 -> 550 bytes .../css/rime/css-images/PnlHdr_bgslice.gif | Bin 0 -> 96 bytes .../css/rime/css-images/PnlHdr_collapsed.gif | Bin 0 -> 1234 bytes .../rime/css-images/PnlHdr_collapsed_dis.gif | Bin 0 -> 1285 bytes .../css/rime/css-images/PnlHdr_down.gif | Bin 0 -> 1242 bytes .../css/rime/css-images/PnlHdr_down_dis.gif | Bin 0 -> 1285 bytes .../css/rime/css-images/PnlHdr_file.gif | Bin 0 -> 970 bytes .../css-images/ProgFill_Indet_Bg_active.gif | Bin 0 -> 13743 bytes .../css-images/ProgFill_Indet_Bg_inactive.gif | Bin 0 -> 734 bytes .../css/rime/css-images/ProgFill_bg.gif | Bin 0 -> 94 bytes .../css/rime/css-images/Tab_Btm_LftBtm.gif | Bin 0 -> 93 bytes .../rime/css-images/Tab_Btm_LftBtm_off.gif | Bin 0 -> 95 bytes .../css/rime/css-images/Tab_Btm_LftMid.gif | Bin 0 -> 126 bytes .../rime/css-images/Tab_Btm_LftMid_off.gif | Bin 0 -> 123 bytes .../css/rime/css-images/Tab_Btm_MidBtm.gif | Bin 0 -> 50 bytes .../rime/css-images/Tab_Btm_MidBtm_off.gif | Bin 0 -> 50 bytes .../css/rime/css-images/Tab_Btm_MidMid.gif | Bin 0 -> 95 bytes .../rime/css-images/Tab_Btm_MidMid_off.gif | Bin 0 -> 70 bytes .../css/rime/css-images/Tab_Btm_RtBtm.gif | Bin 0 -> 94 bytes .../css/rime/css-images/Tab_Btm_RtBtm_off.gif | Bin 0 -> 94 bytes .../css/rime/css-images/Tab_Btm_RtMid.gif | Bin 0 -> 126 bytes .../css/rime/css-images/Tab_Btm_RtMid_off.gif | Bin 0 -> 124 bytes .../css/rime/css-images/Tab_LftMid.gif | Bin 0 -> 133 bytes .../css/rime/css-images/Tab_LftMid_off.gif | Bin 0 -> 131 bytes .../css/rime/css-images/Tab_LftTop.gif | Bin 0 -> 94 bytes .../css/rime/css-images/Tab_LftTop_off.gif | Bin 0 -> 94 bytes .../css/rime/css-images/Tab_MidMid.gif | Bin 0 -> 97 bytes .../css/rime/css-images/Tab_MidMid_bullet.gif | Bin 0 -> 1242 bytes .../rime/css-images/Tab_MidMid_bullet_off.gif | Bin 0 -> 462 bytes .../css-images/Tab_MidMid_bullet_over.gif | Bin 0 -> 464 bytes .../css/rime/css-images/Tab_MidMid_off.gif | Bin 0 -> 98 bytes .../css/rime/css-images/Tab_MidTop.gif | Bin 0 -> 43 bytes .../css/rime/css-images/Tab_MidTop_off.gif | Bin 0 -> 43 bytes .../xmlhttp/css/rime/css-images/Tab_RtMid.gif | Bin 0 -> 127 bytes .../css/rime/css-images/Tab_RtMid_off.gif | Bin 0 -> 126 bytes .../xmlhttp/css/rime/css-images/Tab_RtTop.gif | Bin 0 -> 94 bytes .../css/rime/css-images/Tab_RtTop_off.gif | Bin 0 -> 93 bytes .../css/rime/css-images/arrow-ff-dis.gif | Bin 0 -> 228 bytes .../xmlhttp/css/rime/css-images/arrow-ff.gif | Bin 0 -> 228 bytes .../css/rime/css-images/arrow-first-dis.gif | Bin 0 -> 230 bytes .../css/rime/css-images/arrow-first.gif | Bin 0 -> 230 bytes .../css/rime/css-images/arrow-fr-dis.gif | Bin 0 -> 229 bytes .../xmlhttp/css/rime/css-images/arrow-fr.gif | Bin 0 -> 229 bytes .../css/rime/css-images/arrow-last-dis.gif | Bin 0 -> 229 bytes .../css/rime/css-images/arrow-last.gif | Bin 0 -> 229 bytes .../css/rime/css-images/arrow-next-dis.gif | Bin 0 -> 214 bytes .../css/rime/css-images/arrow-next.gif | Bin 0 -> 214 bytes .../rime/css-images/arrow-previous-dis.gif | Bin 0 -> 211 bytes .../css/rime/css-images/arrow-previous.gif | Bin 0 -> 211 bytes .../css/rime/css-images/bottom_menu_bg.png | Bin 0 -> 101 bytes .../rime/css-images/bottom_menu_btn_bg_on.png | Bin 0 -> 101 bytes .../xmlhttp/css/rime/css-images/bullet.gif | Bin 0 -> 280 bytes .../css/rime/css-images/cal_arrow_left.gif | Bin 0 -> 211 bytes .../rime/css-images/cal_arrow_left_dis.gif | Bin 0 -> 967 bytes .../css/rime/css-images/cal_arrow_right.gif | Bin 0 -> 213 bytes .../rime/css-images/cal_arrow_right_dis.gif | Bin 0 -> 961 bytes .../css/rime/css-images/cal_button.gif | Bin 0 -> 1042 bytes .../xmlhttp/css/rime/css-images/cal_off.gif | Bin 0 -> 582 bytes .../css/rime/css-images/column_sort_asc.gif | Bin 0 -> 152 bytes .../css/rime/css-images/column_sort_desc.gif | Bin 0 -> 152 bytes .../css/rime/css-images/connect_active.gif | Bin 0 -> 3760 bytes .../css/rime/css-images/connect_caution.gif | Bin 0 -> 6196 bytes .../rime/css-images/connect_disconnected.gif | Bin 0 -> 6204 bytes .../css/rime/css-images/connect_idle.gif | Bin 0 -> 727 bytes .../rime/css-images/contentContainer_bg.gif | Bin 0 -> 131 bytes .../css-images/contentContainer_bg_up.gif | Bin 0 -> 131 bytes .../css/rime/css-images/off-left-bot.gif | Bin 0 -> 94 bytes .../css/rime/css-images/off-left-top-dis.gif | Bin 0 -> 48 bytes .../css/rime/css-images/off-mid-bot.gif | Bin 0 -> 94 bytes .../css/rime/css-images/off-mid-top-dis.gif | Bin 0 -> 47 bytes .../css/rime/css-images/off-right-bot.gif | Bin 0 -> 94 bytes .../css/rime/css-images/off-right-top-dis.gif | Bin 0 -> 49 bytes .../xmlhttp/css/rime/css-images/submenu.gif | Bin 0 -> 67 bytes .../css/rime/css-images/submenu_on.gif | Bin 0 -> 67 bytes .../css/rime/css-images/table-border.gif | Bin 0 -> 804 bytes .../css/rime/css-images/table_col_header.gif | Bin 0 -> 155 bytes .../rime/css-images/table_col_header_dis.gif | Bin 0 -> 837 bytes .../xmlhttp/css/rime/css-images/theme_bg.gif | Bin 0 -> 101 bytes .../css/rime/css-images/theme_change_bg.gif | Bin 0 -> 342 bytes .../css/rime/css-images/tree_document.gif | Bin 0 -> 581 bytes .../css/rime/css-images/tree_folder_close.gif | Bin 0 -> 597 bytes .../rime/css-images/tree_folder_closed.gif | Bin 0 -> 582 bytes .../css/rime/css-images/tree_folder_doc.gif | Bin 0 -> 348 bytes .../css/rime/css-images/tree_folder_open.gif | Bin 0 -> 576 bytes .../css/rime/css-images/tree_line_blank.gif | Bin 0 -> 64 bytes .../rime/css-images/tree_line_last_node.gif | Bin 0 -> 67 bytes .../rime/css-images/tree_line_middle_node.gif | Bin 0 -> 70 bytes .../rime/css-images/tree_line_vertical.gif | Bin 0 -> 68 bytes .../rime/css-images/tree_nav_bottom_close.gif | Bin 0 -> 401 bytes .../rime/css-images/tree_nav_bottom_open.gif | Bin 0 -> 404 bytes .../rime/css-images/tree_nav_middle_close.gif | Bin 0 -> 404 bytes .../rime/css-images/tree_nav_middle_open.gif | Bin 0 -> 407 bytes .../rime/css-images/tree_nav_top_close.gif | Bin 0 -> 399 bytes .../tree_nav_top_close_no_siblings.gif | Bin 0 -> 398 bytes .../css/rime/css-images/tree_nav_top_open.gif | Bin 0 -> 404 bytes .../tree_nav_top_open_no_siblings.gif | Bin 0 -> 401 bytes .../WebRoot/xmlhttp/css/rime/rime-portlet.css | 3018 ++++++++++++++++ Music_List/WebRoot/xmlhttp/css/rime/rime.css | 3069 +++++++++++++++++ .../xmlhttp/css/royale/css-images/add.gif | Bin 0 -> 134 bytes .../css/royale/css-images/arrow-ff-dis.gif | Bin 0 -> 923 bytes .../css/royale/css-images/arrow-ff.gif | Bin 0 -> 254 bytes .../css/royale/css-images/arrow-first-dis.gif | Bin 0 -> 137 bytes .../css/royale/css-images/arrow-first.gif | Bin 0 -> 252 bytes .../css/royale/css-images/arrow-fr.gif | Bin 0 -> 271 bytes .../css/royale/css-images/arrow-last-dis.gif | Bin 0 -> 917 bytes .../css/royale/css-images/arrow-last.gif | Bin 0 -> 263 bytes .../css/royale/css-images/arrow-next-dis.gif | Bin 0 -> 895 bytes .../css/royale/css-images/arrow-next.gif | Bin 0 -> 237 bytes .../royale/css-images/arrow-previous-dis.gif | Bin 0 -> 892 bytes .../css/royale/css-images/arrow-previous.gif | Bin 0 -> 234 bytes .../css/royale/css-images/arrow-rw-dis.gif | Bin 0 -> 131 bytes .../css/royale/css-images/arrowAsc.jpg | Bin 0 -> 676 bytes .../css/royale/css-images/arrowDesc.jpg | Bin 0 -> 675 bytes .../css/royale/css-images/cal_arrow_left.gif | Bin 0 -> 234 bytes .../css/royale/css-images/cal_arrow_right.gif | Bin 0 -> 237 bytes .../css/royale/css-images/cal_button.gif | Bin 0 -> 119 bytes .../xmlhttp/css/royale/css-images/cal_off.gif | Bin 0 -> 594 bytes .../css/royale/css-images/column_sort_asc.gif | Bin 0 -> 73 bytes .../royale/css-images/column_sort_desc.gif | Bin 0 -> 72 bytes .../css/royale/css-images/connect_active.gif | Bin 0 -> 4413 bytes .../css/royale/css-images/connect_caution.gif | Bin 0 -> 568 bytes .../css-images/connect_disconnected.gif | Bin 0 -> 425 bytes .../css/royale/css-images/connect_idle.gif | Bin 0 -> 313 bytes .../xmlhttp/css/royale/css-images/folder.gif | Bin 0 -> 595 bytes .../xmlhttp/css/royale/css-images/images.jpeg | Bin 0 -> 422 bytes .../css/royale/css-images/in_progress.gif | Bin 0 -> 887 bytes .../css-images/in_progress_inactive.gif | Bin 0 -> 88 bytes .../xmlhttp/css/royale/css-images/line.gif | Bin 0 -> 68 bytes .../css/royale/css-images/line_first.gif | Bin 0 -> 67 bytes .../css/royale/css-images/line_last.gif | Bin 0 -> 67 bytes .../css/royale/css-images/line_middle.gif | Bin 0 -> 70 bytes .../css/royale/css-images/menu_blank_icon.gif | Bin 0 -> 836 bytes .../css/royale/css-images/menu_checkbox.gif | Bin 0 -> 191 bytes .../css-images/menu_checkbox_selected.gif | Bin 0 -> 448 bytes .../css/royale/css-images/menu_radio.gif | Bin 0 -> 402 bytes .../royale/css-images/menu_radio_selected.gif | Bin 0 -> 418 bytes .../css/royale/css-images/node_close.gif | Bin 0 -> 88 bytes .../royale/css-images/node_close_first.gif | Bin 0 -> 91 bytes .../css/royale/css-images/node_close_last.gif | Bin 0 -> 89 bytes .../royale/css-images/node_close_middle.gif | Bin 0 -> 90 bytes .../css/royale/css-images/node_open.gif | Bin 0 -> 82 bytes .../css/royale/css-images/node_open_first.gif | Bin 0 -> 85 bytes .../css/royale/css-images/node_open_last.gif | Bin 0 -> 85 bytes .../royale/css-images/node_open_middle.gif | Bin 0 -> 87 bytes .../xmlhttp/css/royale/css-images/noline.gif | Bin 0 -> 58 bytes .../css/royale/css-images/off-left-bot.gif | Bin 0 -> 49 bytes .../css/royale/css-images/off-left-mid.gif | Bin 0 -> 138 bytes .../royale/css-images/off-left-top-dis.gif | Bin 0 -> 48 bytes .../css/royale/css-images/off-left-top.gif | Bin 0 -> 67 bytes .../css/royale/css-images/off-mid-bot.gif | Bin 0 -> 49 bytes .../css/royale/css-images/off-mid-mid.gif | Bin 0 -> 123 bytes .../css/royale/css-images/off-mid-top-dis.gif | Bin 0 -> 47 bytes .../css/royale/css-images/off-mid-top.gif | Bin 0 -> 68 bytes .../css/royale/css-images/off-right-bot.gif | Bin 0 -> 49 bytes .../css/royale/css-images/off-right-mid.gif | Bin 0 -> 138 bytes .../royale/css-images/off-right-top-dis.gif | Bin 0 -> 49 bytes .../css/royale/css-images/off-right-top.gif | Bin 0 -> 68 bytes .../css/royale/css-images/on-left-bot.gif | Bin 0 -> 53 bytes .../css/royale/css-images/on-left-mid.gif | Bin 0 -> 70 bytes .../css/royale/css-images/on-left-top.gif | Bin 0 -> 70 bytes .../css/royale/css-images/on-mid-bot.gif | Bin 0 -> 51 bytes .../css/royale/css-images/on-mid-mid.gif | Bin 0 -> 51 bytes .../css/royale/css-images/on-mid-top.gif | Bin 0 -> 67 bytes .../css/royale/css-images/on-right-bot.gif | Bin 0 -> 53 bytes .../css/royale/css-images/on-right-mid.gif | Bin 0 -> 70 bytes .../css/royale/css-images/on-right-top.gif | Bin 0 -> 71 bytes .../css/royale/css-images/over-left-bot.gif | Bin 0 -> 49 bytes .../css/royale/css-images/over-left-mid.gif | Bin 0 -> 131 bytes .../css/royale/css-images/over-left-top.gif | Bin 0 -> 68 bytes .../css/royale/css-images/over-mid-bot.gif | Bin 0 -> 49 bytes .../css/royale/css-images/over-mid-mid.gif | Bin 0 -> 113 bytes .../css/royale/css-images/over-mid-top.gif | Bin 0 -> 68 bytes .../css/royale/css-images/over-right-bot.gif | Bin 0 -> 49 bytes .../css/royale/css-images/over-right-mid.gif | Bin 0 -> 866 bytes .../css/royale/css-images/over-right-top.gif | Bin 0 -> 68 bytes .../css/royale/css-images/popupclose.gif | Bin 0 -> 326 bytes .../css/royale/css-images/popupicon.gif | Bin 0 -> 988 bytes .../xmlhttp/css/royale/css-images/remove.gif | Bin 0 -> 76 bytes .../xmlhttp/css/royale/css-images/resize.gif | Bin 0 -> 121 bytes .../royale/css-images/selection_spacer.gif | Bin 0 -> 45 bytes .../xmlhttp/css/royale/css-images/spacer.gif | Bin 0 -> 43 bytes .../xmlhttp/css/royale/css-images/submenu.gif | Bin 0 -> 67 bytes .../css/royale/css-images/submenu_on.gif | Bin 0 -> 67 bytes .../xmlhttp/css/royale/css-images/tab-off.gif | Bin 0 -> 640 bytes .../xmlhttp/css/royale/css-images/tab-on.gif | Bin 0 -> 295 bytes .../css/royale/css-images/tab-over.gif | Bin 0 -> 453 bytes .../royale/css-images/table_col_header.gif | Bin 0 -> 1087 bytes .../css-images/table_col_header_dis.gif | Bin 0 -> 659 bytes .../royale/css-images/tbot-off-left-bot.gif | Bin 0 -> 812 bytes .../royale/css-images/tbot-off-left-top.gif | Bin 0 -> 49 bytes .../royale/css-images/tbot-off-mid-bot.gif | Bin 0 -> 812 bytes .../royale/css-images/tbot-off-mid-top.gif | Bin 0 -> 49 bytes .../royale/css-images/tbot-off-right-bot.gif | Bin 0 -> 811 bytes .../royale/css-images/tbot-off-right-top.gif | Bin 0 -> 49 bytes .../royale/css-images/tbot-on-left-bot.gif | Bin 0 -> 819 bytes .../royale/css-images/tbot-on-left-top.gif | Bin 0 -> 53 bytes .../css/royale/css-images/tbot-on-mid-bot.gif | Bin 0 -> 811 bytes .../css/royale/css-images/tbot-on-mid-top.gif | Bin 0 -> 51 bytes .../royale/css-images/tbot-on-right-bot.gif | Bin 0 -> 818 bytes .../royale/css-images/tbot-on-right-top.gif | Bin 0 -> 53 bytes .../royale/css-images/tbot-over-left-bot.gif | Bin 0 -> 815 bytes .../royale/css-images/tbot-over-left-top.gif | Bin 0 -> 49 bytes .../royale/css-images/tbot-over-mid-bot.gif | Bin 0 -> 812 bytes .../royale/css-images/tbot-over-mid-top.gif | Bin 0 -> 49 bytes .../royale/css-images/tbot-over-right-bot.gif | Bin 0 -> 812 bytes .../royale/css-images/tbot-over-right-top.gif | Bin 0 -> 49 bytes .../css/royale/css-images/tree_document.gif | Bin 0 -> 372 bytes .../royale/css-images/tree_folder_close.gif | Bin 0 -> 617 bytes .../royale/css-images/tree_folder_closed.gif | Bin 0 -> 617 bytes .../royale/css-images/tree_folder_open.gif | Bin 0 -> 409 bytes .../css/royale/css-images/tree_line_blank.gif | Bin 0 -> 64 bytes .../royale/css-images/tree_line_last_node.gif | Bin 0 -> 64 bytes .../css-images/tree_line_middle_node.gif | Bin 0 -> 64 bytes .../royale/css-images/tree_line_vertical.gif | Bin 0 -> 64 bytes .../css-images/tree_nav_bottom_close.gif | Bin 0 -> 882 bytes .../css-images/tree_nav_bottom_open.gif | Bin 0 -> 129 bytes .../css-images/tree_nav_middle_close.gif | Bin 0 -> 882 bytes .../css-images/tree_nav_middle_open.gif | Bin 0 -> 129 bytes .../royale/css-images/tree_nav_top_close.gif | Bin 0 -> 882 bytes .../tree_nav_top_close_no_siblings.gif | Bin 0 -> 882 bytes .../css-images/tree_nav_top_closess.gif | Bin 0 -> 138 bytes .../royale/css-images/tree_nav_top_open.gif | Bin 0 -> 129 bytes .../tree_nav_top_open_no_siblings.gif | Bin 0 -> 129 bytes .../css/royale/css-images/window_top.gif | Bin 0 -> 1256 bytes .../WebRoot/xmlhttp/css/royale/royale.css | 2888 ++++++++++++++++ .../WebRoot/xmlhttp/css/xp/css-images/add.gif | Bin 0 -> 134 bytes .../css/xp/css-images/arrow-ff-dis.gif | Bin 0 -> 1142 bytes .../xmlhttp/css/xp/css-images/arrow-ff.gif | Bin 0 -> 1166 bytes .../css/xp/css-images/arrow-first-dis.gif | Bin 0 -> 727 bytes .../xmlhttp/css/xp/css-images/arrow-first.gif | Bin 0 -> 1161 bytes .../css/xp/css-images/arrow-fr-dis.gif | Bin 0 -> 1135 bytes .../xmlhttp/css/xp/css-images/arrow-fr.gif | Bin 0 -> 1162 bytes .../css/xp/css-images/arrow-last-dis.gif | Bin 0 -> 728 bytes .../xmlhttp/css/xp/css-images/arrow-last.gif | Bin 0 -> 1162 bytes .../css/xp/css-images/arrow-next-dis.gif | Bin 0 -> 1082 bytes .../xmlhttp/css/xp/css-images/arrow-next.gif | Bin 0 -> 1101 bytes .../css/xp/css-images/arrow-previous-dis.gif | Bin 0 -> 1079 bytes .../css/xp/css-images/arrow-previous.gif | Bin 0 -> 1105 bytes .../xmlhttp/css/xp/css-images/arrowAsc.jpg | Bin 0 -> 676 bytes .../xmlhttp/css/xp/css-images/arrowDesc.jpg | Bin 0 -> 675 bytes .../css/xp/css-images/cal_arrow_left.gif | Bin 0 -> 1105 bytes .../css/xp/css-images/cal_arrow_left_dis.gif | Bin 0 -> 967 bytes .../css/xp/css-images/cal_arrow_right.gif | Bin 0 -> 1101 bytes .../css/xp/css-images/cal_arrow_right_dis.gif | Bin 0 -> 961 bytes .../xmlhttp/css/xp/css-images/cal_button.gif | Bin 0 -> 119 bytes .../xmlhttp/css/xp/css-images/cal_off.gif | Bin 0 -> 594 bytes .../css/xp/css-images/column_sort_asc.gif | Bin 0 -> 152 bytes .../css/xp/css-images/column_sort_desc.gif | Bin 0 -> 152 bytes .../css/xp/css-images/connect_active.gif | Bin 0 -> 2410 bytes .../css/xp/css-images/connect_caution.gif | Bin 0 -> 440 bytes .../xp/css-images/connect_disconnected.gif | Bin 0 -> 259 bytes .../css/xp/css-images/connect_idle.gif | Bin 0 -> 169 bytes .../xmlhttp/css/xp/css-images/folder.gif | Bin 0 -> 595 bytes .../xmlhttp/css/xp/css-images/images.jpeg | Bin 0 -> 422 bytes .../xmlhttp/css/xp/css-images/in_progress.gif | Bin 0 -> 2136 bytes .../xp/css-images/in_progress_inactive.gif | Bin 0 -> 900 bytes .../xmlhttp/css/xp/css-images/line.gif | Bin 0 -> 68 bytes .../xmlhttp/css/xp/css-images/line_first.gif | Bin 0 -> 67 bytes .../xmlhttp/css/xp/css-images/line_last.gif | Bin 0 -> 67 bytes .../xmlhttp/css/xp/css-images/line_middle.gif | Bin 0 -> 70 bytes .../css/xp/css-images/menu_blank_icon.gif | Bin 0 -> 836 bytes .../css/xp/css-images/menu_checkbox.gif | Bin 0 -> 191 bytes .../xp/css-images/menu_checkbox_selected.gif | Bin 0 -> 448 bytes .../xmlhttp/css/xp/css-images/menu_radio.gif | Bin 0 -> 402 bytes .../css/xp/css-images/menu_radio_selected.gif | Bin 0 -> 418 bytes .../xmlhttp/css/xp/css-images/node_close.gif | Bin 0 -> 88 bytes .../css/xp/css-images/node_close_first.gif | Bin 0 -> 91 bytes .../css/xp/css-images/node_close_last.gif | Bin 0 -> 89 bytes .../css/xp/css-images/node_close_middle.gif | Bin 0 -> 90 bytes .../xmlhttp/css/xp/css-images/node_open.gif | Bin 0 -> 82 bytes .../css/xp/css-images/node_open_first.gif | Bin 0 -> 85 bytes .../css/xp/css-images/node_open_last.gif | Bin 0 -> 85 bytes .../css/xp/css-images/node_open_middle.gif | Bin 0 -> 87 bytes .../xmlhttp/css/xp/css-images/noline.gif | Bin 0 -> 58 bytes .../css/xp/css-images/off-left-bot.gif | Bin 0 -> 94 bytes .../css/xp/css-images/off-left-mid.gif | Bin 0 -> 612 bytes .../css/xp/css-images/off-left-top-dis.gif | Bin 0 -> 48 bytes .../css/xp/css-images/off-left-top.gif | Bin 0 -> 69 bytes .../xmlhttp/css/xp/css-images/off-mid-bot.gif | Bin 0 -> 94 bytes .../xmlhttp/css/xp/css-images/off-mid-mid.gif | Bin 0 -> 589 bytes .../css/xp/css-images/off-mid-top-dis.gif | Bin 0 -> 47 bytes .../xmlhttp/css/xp/css-images/off-mid-top.gif | Bin 0 -> 71 bytes .../css/xp/css-images/off-right-bot.gif | Bin 0 -> 94 bytes .../css/xp/css-images/off-right-mid.gif | Bin 0 -> 371 bytes .../css/xp/css-images/off-right-top-dis.gif | Bin 0 -> 49 bytes .../css/xp/css-images/off-right-top.gif | Bin 0 -> 70 bytes .../xmlhttp/css/xp/css-images/on-left-bot.gif | Bin 0 -> 52 bytes .../xmlhttp/css/xp/css-images/on-left-mid.gif | Bin 0 -> 52 bytes .../xmlhttp/css/xp/css-images/on-left-top.gif | Bin 0 -> 72 bytes .../xmlhttp/css/xp/css-images/on-mid-bot.gif | Bin 0 -> 51 bytes .../xmlhttp/css/xp/css-images/on-mid-mid.gif | Bin 0 -> 51 bytes .../xmlhttp/css/xp/css-images/on-mid-top.gif | Bin 0 -> 69 bytes .../css/xp/css-images/on-right-bot.gif | Bin 0 -> 52 bytes .../css/xp/css-images/on-right-mid.gif | Bin 0 -> 52 bytes .../css/xp/css-images/on-right-top.gif | Bin 0 -> 72 bytes .../css/xp/css-images/over-left-bot.gif | Bin 0 -> 94 bytes .../css/xp/css-images/over-left-mid.gif | Bin 0 -> 66 bytes .../css/xp/css-images/over-left-top.gif | Bin 0 -> 68 bytes .../css/xp/css-images/over-mid-bot.gif | Bin 0 -> 94 bytes .../css/xp/css-images/over-mid-mid.gif | Bin 0 -> 66 bytes .../css/xp/css-images/over-mid-top.gif | Bin 0 -> 68 bytes .../css/xp/css-images/over-right-bot.gif | Bin 0 -> 94 bytes .../css/xp/css-images/over-right-mid.gif | Bin 0 -> 67 bytes .../css/xp/css-images/over-right-top.gif | Bin 0 -> 69 bytes .../xmlhttp/css/xp/css-images/popupclose.gif | Bin 0 -> 326 bytes .../xmlhttp/css/xp/css-images/popupicon.gif | Bin 0 -> 988 bytes .../xmlhttp/css/xp/css-images/remove.gif | Bin 0 -> 76 bytes .../xmlhttp/css/xp/css-images/resize.gif | Bin 0 -> 121 bytes .../css/xp/css-images/selection_spacer.gif | Bin 0 -> 45 bytes .../xmlhttp/css/xp/css-images/spacer.gif | Bin 0 -> 43 bytes .../xmlhttp/css/xp/css-images/submenu.gif | Bin 0 -> 67 bytes .../xmlhttp/css/xp/css-images/submenu_on.gif | Bin 0 -> 67 bytes .../xmlhttp/css/xp/css-images/tab-off.gif | Bin 0 -> 888 bytes .../xmlhttp/css/xp/css-images/tab-on.gif | Bin 0 -> 278 bytes .../xmlhttp/css/xp/css-images/tab-over.gif | Bin 0 -> 604 bytes .../css/xp/css-images/table-border.gif | Bin 0 -> 804 bytes .../css/xp/css-images/table_col_header.gif | Bin 0 -> 344 bytes .../xp/css-images/table_col_header_dis.gif | Bin 0 -> 157 bytes .../css/xp/css-images/tbot-off-left-bot.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tbot-off-left-top.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tbot-off-mid-bot.gif | Bin 0 -> 818 bytes .../css/xp/css-images/tbot-off-mid-top.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tbot-off-right-bot.gif | Bin 0 -> 816 bytes .../css/xp/css-images/tbot-off-right-top.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tbot-on-left-bot.gif | Bin 0 -> 817 bytes .../css/xp/css-images/tbot-on-left-top.gif | Bin 0 -> 52 bytes .../css/xp/css-images/tbot-on-mid-bot.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tbot-on-mid-top.gif | Bin 0 -> 51 bytes .../css/xp/css-images/tbot-on-right-bot.gif | Bin 0 -> 817 bytes .../css/xp/css-images/tbot-on-right-top.gif | Bin 0 -> 52 bytes .../css/xp/css-images/tbot-over-left-bot.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tbot-over-left-top.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tbot-over-mid-bot.gif | Bin 0 -> 812 bytes .../css/xp/css-images/tbot-over-mid-top.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tbot-over-right-bot.gif | Bin 0 -> 813 bytes .../css/xp/css-images/tbot-over-right-top.gif | Bin 0 -> 815 bytes .../css/xp/css-images/tree_document.gif | Bin 0 -> 376 bytes .../css/xp/css-images/tree_folder_close.gif | Bin 0 -> 632 bytes .../css/xp/css-images/tree_folder_closed.gif | Bin 0 -> 632 bytes .../css/xp/css-images/tree_folder_open.gif | Bin 0 -> 1054 bytes .../css/xp/css-images/tree_line_blank.gif | Bin 0 -> 64 bytes .../css/xp/css-images/tree_line_last_node.gif | Bin 0 -> 78 bytes .../xp/css-images/tree_line_middle_node.gif | Bin 0 -> 83 bytes .../css/xp/css-images/tree_line_vertical.gif | Bin 0 -> 81 bytes .../xp/css-images/tree_nav_bottom_close.gif | Bin 0 -> 213 bytes .../xp/css-images/tree_nav_bottom_open.gif | Bin 0 -> 217 bytes .../xp/css-images/tree_nav_middle_close.gif | Bin 0 -> 221 bytes .../xp/css-images/tree_nav_middle_open.gif | Bin 0 -> 224 bytes .../css/xp/css-images/tree_nav_top_close.gif | Bin 0 -> 217 bytes .../tree_nav_top_close_no_siblings.gif | Bin 0 -> 207 bytes .../css/xp/css-images/tree_nav_top_open.gif | Bin 0 -> 221 bytes .../tree_nav_top_open_no_siblings.gif | Bin 0 -> 211 bytes .../xmlhttp/css/xp/css-images/window_top.gif | Bin 0 -> 1258 bytes .../WebRoot/xmlhttp/css/xp/xp-portlet.css | 2867 +++++++++++++++ Music_List/WebRoot/xmlhttp/css/xp/xp.css | 2905 ++++++++++++++++ .../pulsoconf/music/list/bean/MusicBean.java | 39 + .../music/list/logic/MusicListGeneric.java | 76 + 369 files changed, 15259 insertions(+), 139 deletions(-) create mode 100644 Music_List/.classpath create mode 100644 Music_List/.mymetadata create mode 100644 Music_List/.project create mode 100644 Music_List/.settings/org.eclipse.jdt.core.prefs create mode 100644 Music_List/WebRoot/META-INF/MANIFEST.MF create mode 100644 Music_List/WebRoot/WEB-INF/.faces-config.mex create mode 100644 Music_List/WebRoot/WEB-INF/faces-config.xml create mode 100644 Music_List/WebRoot/WEB-INF/web.xml create mode 100644 Music_List/WebRoot/index.jsp create mode 100644 Music_List/WebRoot/whatsgoingon.jspx create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlClpsblCnt_bullet.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_bgslice.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_collapsed.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_collapsed_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_down.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_down_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_file.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/ProgFill_Indet_Bg_active.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/ProgFill_Indet_Bg_inactive.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/ProgFill_bg.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_LftBtm.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_LftBtm_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_LftMid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_LftMid_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidBtm.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidBtm_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidMid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidMid_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtBtm.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtBtm_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtMid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtMid_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_LftMid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_LftMid_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_LftTop.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_LftTop_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid_bullet.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid_bullet_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid_bullet_over.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidTop.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidTop_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtMid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtMid_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtTop.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtTop_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-ff-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-ff.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-first-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-fr-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-fr.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-last-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-next-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-next.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-previous-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-previous.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/bottom_menu_bg.png create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/bottom_menu_btn_bg_on.png create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/bullet.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_arrow_left.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_arrow_left_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_arrow_right.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_arrow_right_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_button.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/column_sort_asc.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/column_sort_desc.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/connect_active.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/connect_caution.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/connect_disconnected.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/connect_idle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/contentContainer_bg.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/contentContainer_bg_up.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/off-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/off-left-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/off-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/off-mid-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/off-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/off-right-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/submenu.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/submenu_on.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/table-border.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/table_col_header.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/table_col_header_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/theme_bg.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/theme_change_bg.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_document.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_folder_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_folder_closed.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_folder_doc.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_folder_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_blank.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_last_node.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_middle_node.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_vertical.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_bottom_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_bottom_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_middle_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_middle_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_close_no_siblings.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_open_no_siblings.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/rime-portlet.css create mode 100644 Music_List/WebRoot/xmlhttp/css/rime/rime.css create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/add.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-ff-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-ff.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-first-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-fr.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-last-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-next-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-next.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-previous-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-previous.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-rw-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrowAsc.jpg create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/arrowDesc.jpg create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_arrow_left.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_arrow_right.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_button.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/column_sort_asc.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/column_sort_desc.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/connect_active.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/connect_caution.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/connect_disconnected.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/connect_idle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/folder.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/images.jpeg create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/in_progress.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/in_progress_inactive.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/line.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/line_first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/line_last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/line_middle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_blank_icon.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_checkbox.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_checkbox_selected.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_radio.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_radio_selected.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/node_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/node_close_first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/node_close_last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/node_close_middle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_middle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/noline.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-mid-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-right-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/on-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-mid-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-right-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/over-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/popupclose.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/popupicon.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/remove.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/resize.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/selection_spacer.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/spacer.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/submenu.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/submenu_on.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tab-off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tab-on.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tab-over.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/table_col_header.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/table_col_header_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-on-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-on-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-on-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-on-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-on-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-on-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_document.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_closed.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_blank.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_last_node.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_middle_node.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_vertical.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_bottom_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_bottom_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_middle_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_middle_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_close_no_siblings.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_closess.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_open_no_siblings.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/css-images/window_top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/royale/royale.css create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/add.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-ff-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-ff.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-first-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-fr-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-fr.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-last-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-next-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-next.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-previous-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-previous.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrowAsc.jpg create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/arrowDesc.jpg create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_arrow_left.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_arrow_left_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_arrow_right.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_arrow_right_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_button.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/column_sort_asc.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/column_sort_desc.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/connect_active.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/connect_caution.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/connect_disconnected.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/connect_idle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/folder.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/images.jpeg create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/in_progress.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/in_progress_inactive.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/line.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/line_first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/line_last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/line_middle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_blank_icon.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_checkbox.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_checkbox_selected.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_radio.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_radio_selected.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/node_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/node_close_first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/node_close_last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/node_close_middle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_first.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_last.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_middle.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/noline.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-top-dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-left-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-mid-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-mid.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/popupclose.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/popupicon.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/remove.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/resize.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/selection_spacer.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/spacer.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/submenu.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/submenu_on.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tab-off.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tab-on.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tab-over.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/table-border.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/table_col_header.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/table_col_header_dis.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-on-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-on-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-on-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-on-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-on-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-on-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-left-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-left-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-mid-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-mid-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-right-bot.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-right-top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_document.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_folder_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_folder_closed.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_folder_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_line_blank.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_line_last_node.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_line_middle_node.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_line_vertical.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_bottom_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_bottom_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_middle_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_middle_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_top_close.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_top_close_no_siblings.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_top_open.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_top_open_no_siblings.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/css-images/window_top.gif create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/xp-portlet.css create mode 100644 Music_List/WebRoot/xmlhttp/css/xp/xp.css create mode 100644 Music_List/src/pulsoconf/music/list/bean/MusicBean.java create mode 100644 Music_List/src/pulsoconf/music/list/logic/MusicListGeneric.java diff --git a/CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml b/CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml index 5f2cbd4..ce04944 100644 --- a/CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml +++ b/CuentasPersonales/WebRoot/XHTML/MyXhtml.xhtml @@ -61,8 +61,8 @@ Aplicar Movimiento para el Año : - - + + @@ -95,7 +95,7 @@ - + diff --git a/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpMovimientoView.java b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpMovimientoView.java index 4491618..a32b914 100644 --- a/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpMovimientoView.java +++ b/CuentasPersonales/generado/org/zathura/cuentas/presentation/backingBeans/CpMovimientoView.java @@ -24,8 +24,10 @@ import java.util.ArrayList; import java.util.Date; +import java.util.HashMap; import java.util.Iterator; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.TimeZone; @@ -63,6 +65,9 @@ public class CpMovimientoView { private Long gm = 0L; private Long annoAplica; + private List items; + private Map checkMap = new HashMap(); + private Map checkMap2 = new HashMap(); //meses private boolean enero; private boolean febrero; @@ -86,38 +91,31 @@ public CpMovimientoView() { super(); } + /** + * Inicia la consulta de los movimientos + * @param event + */ public void startChanged(ValueChangeEvent event) { try{ - if(event.getNewValue() != null || !event.getNewValue().equals("") ) - annoAplica = new Long(event.getNewValue().toString()); - - //List dataTmp = new ArrayList(); - //dataTmp=data; - //Long mes = 0L; - for (CpMovimientoDTO cpMovimientoDTO : data) { - for(Long mes=1L;mes<=12;mes++){ - Object[] arr={"cpMovimiento",false,cpMovimientoDTO.getIdMovimiento(),"=", - "anno",false,annoAplica,"=", - "mes",false,mes,"="}; - List lista = new ArrayList(); - lista=BusinessDelegatorView.findByCriteriaInCpDetalleMovimiento(arr, null, null) ; -// if(mes == 1L){ -// if(lista.size()>0){ -// checkEnero.setValue(true); -// enero = true; -// checkEnero.setSelected(true); -// checkEnero.setRendered(true); -// } else { -// checkEnero.setValue(false); -// } -// } - } - - } + if(event.getNewValue() != null || !event.getNewValue().equals("") ){ + annoAplica = new Long(event.getNewValue().toString()); + consultaLista(); + } } catch (Exception e) { FacesUtils.addErrorMessage(e.getMessage()); } } + +// public String getSelected() { +// String result = ""; +// for (checkMap2 entry : checkMap)) { +// if (entry.getValue()) { +// result = result + ", "+entry.getKey(); +// } +// } +// return result.length() == 0 ? "" : result.sub string(2); +// } + public void rowEventAplica(SelectEvent e){ try{ @@ -355,7 +353,6 @@ public void rowEventListener(RowEditEvent e) { txtDescripcionMovimiento = new InputText(); } - txtDescripcionMovimiento.setValue(cpMovimientoDTO.getDescripcionMovimiento()); if (txtObservaciones == null) { txtObservaciones = new InputText(); @@ -941,121 +938,141 @@ public String action_check_delete(Long mesSelected){ return ""; } + public void consultaLista(){ + lstMovAplica = new ArrayList(); + try{ + for (CpMovimientoDTO cpMovimientoDTO : this.getData()) { + MovimientoAplica movAplica = new MovimientoAplica(); + movAplica.setIdMovimiento(cpMovimientoDTO.getIdMovimiento()); + movAplica.setDescripcionMovimiento(cpMovimientoDTO.getDescripcionMovimiento()); + movAplica.setIdGrupoMovimiento_CpGrupoMovimiento(cpMovimientoDTO.getIdGrupoMovimiento_CpGrupoMovimiento()); + movAplica.setDescripcionGrupo(cpMovimientoDTO.getDescripcionGrupo()); + movAplica.setIdUsuario_CpUsuarios(cpMovimientoDTO.getIdUsuario_CpUsuarios()); + movAplica.setObservaciones(cpMovimientoDTO.getObservaciones()); + + + for(Long mes=1L;mes<=12;mes++){ + Object[] arr={"cpMovimiento",false,cpMovimientoDTO.getIdMovimiento(),"=", + "anno",false,annoAplica,"=", + "mes",false,mes,"="}; + List lista = new ArrayList(); + lista=BusinessDelegatorView.findByCriteriaInCpDetalleMovimiento(arr, null, null) ; + if(mes == 1L){ + if(lista.size()>0){ + movAplica.setEnero(true); + } else { + movAplica.setEnero(false); + } + } + if(mes == 2L){ + if(lista.size()>0){ + movAplica.setFebrero(true); + } else { + movAplica.setFebrero(false); + } + } + if(mes == 3L){ + if(lista.size()>0){ + movAplica.setMarzo(true); + } else { + movAplica.setMarzo(false); + } + } + if(mes == 4L){ + if(lista.size()>0){ + movAplica.setAbril(true); + } else { + movAplica.setAbril(false); + } + } + if(mes == 5L){ + if(lista.size()>0){ + movAplica.setMayo(true); + } else { + movAplica.setMayo(false); + } + } + if(mes == 6L){ + if(lista.size()>0){ + movAplica.setJunio(true); + } else { + movAplica.setJunio(false); + } + } + if(mes == 7L){ + if(lista.size()>0){ + movAplica.setJulio(true); + } else { + movAplica.setJulio(false); + } + } + if(mes == 8L){ + if(lista.size()>0){ + movAplica.setAgosto(true); + } else { + movAplica.setAgosto(false); + } + } + if(mes == 9L){ + if(lista.size()>0){ + movAplica.setSeptiembre(true); + } else { + movAplica.setSeptiembre(false); + } + } + if(mes == 10L){ + if(lista.size()>0){ + movAplica.setOctubre(true); + } else { + movAplica.setOctubre(false); + } + } + if(mes == 11L){ + if(lista.size()>0){ + movAplica.setNoviembre(true); + } else { + movAplica.setNoviembre(false); + } + } + if(mes == 12L){ + if(lista.size()>0){ + movAplica.setDiciembre(true); + } else { + movAplica.setDiciembre(false); + } + } + } + lstMovAplica.add(movAplica); + } + } catch (Exception e) { + FacesUtils.addErrorMessage(e.getMessage()); + } + + } + public List getLstMovAplica() { - lstMovAplica = new ArrayList(); - try{ - for (CpMovimientoDTO cpMovimientoDTO : this.getData()) { - MovimientoAplica movAplica = new MovimientoAplica(); - movAplica.setIdMovimiento(cpMovimientoDTO.getIdMovimiento()); - movAplica.setDescripcionMovimiento(cpMovimientoDTO.getDescripcionMovimiento()); - movAplica.setIdGrupoMovimiento_CpGrupoMovimiento(cpMovimientoDTO.getIdGrupoMovimiento_CpGrupoMovimiento()); - movAplica.setDescripcionGrupo(cpMovimientoDTO.getDescripcionGrupo()); - movAplica.setIdUsuario_CpUsuarios(cpMovimientoDTO.getIdUsuario_CpUsuarios()); - movAplica.setObservaciones(cpMovimientoDTO.getObservaciones()); - - for(Long mes=1L;mes<=12;mes++){ - Object[] arr={"cpMovimiento",false,cpMovimientoDTO.getIdMovimiento(),"=", - "anno",false,annoAplica,"=", - "mes",false,mes,"="}; - List lista = new ArrayList(); - lista=BusinessDelegatorView.findByCriteriaInCpDetalleMovimiento(arr, null, null) ; - if(mes == 1L){ - if(lista.size()>0){ - movAplica.setEnero(true); - } else { - movAplica.setEnero(false); - } - } - if(mes == 2L){ - if(lista.size()>0){ - movAplica.setFebrero(true); - } else { - movAplica.setFebrero(false); - } - } - if(mes == 3L){ - if(lista.size()>0){ - movAplica.setMarzo(true); - } else { - movAplica.setMarzo(false); - } - } - if(mes == 4L){ - if(lista.size()>0){ - movAplica.setAbril(true); - } else { - movAplica.setAbril(false); - } - } - if(mes == 5L){ - if(lista.size()>0){ - movAplica.setMayo(true); - } else { - movAplica.setMayo(false); - } - } - if(mes == 6L){ - if(lista.size()>0){ - movAplica.setJunio(true); - } else { - movAplica.setJunio(false); - } - } - if(mes == 7L){ - if(lista.size()>0){ - movAplica.setJulio(true); - } else { - movAplica.setJulio(false); - } - } - if(mes == 8L){ - if(lista.size()>0){ - movAplica.setAgosto(true); - } else { - movAplica.setAgosto(false); - } - } - if(mes == 9L){ - if(lista.size()>0){ - movAplica.setSeptiembre(true); - } else { - movAplica.setSeptiembre(false); - } - } - if(mes == 10L){ - if(lista.size()>0){ - movAplica.setOctubre(true); - } else { - movAplica.setOctubre(false); - } - } - if(mes == 11L){ - if(lista.size()>0){ - movAplica.setNoviembre(true); - } else { - movAplica.setNoviembre(false); - } - } - if(mes == 12L){ - if(lista.size()>0){ - movAplica.setDiciembre(true); - } else { - movAplica.setDiciembre(false); - } - } - } - lstMovAplica.add(movAplica); - } - } catch (Exception e) { - FacesUtils.addErrorMessage(e.getMessage()); - } - return lstMovAplica; - + return lstMovAplica; } public void setLstMovAplica(List lstMovAplica) { this.lstMovAplica = lstMovAplica; } + + public List getItems() { + return items; + } + + public void setItems(List items) { + this.items = items; + } + + public Map getCheckMap() { + return checkMap; + } + + public void setCheckMap(Map checkMap) { + this.checkMap = checkMap; + } diff --git a/Music_List/.classpath b/Music_List/.classpath new file mode 100644 index 0000000..aa960f5 --- /dev/null +++ b/Music_List/.classpath @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Music_List/.mymetadata b/Music_List/.mymetadata new file mode 100644 index 0000000..6a988f1 --- /dev/null +++ b/Music_List/.mymetadata @@ -0,0 +1,13 @@ + + + + + + + diff --git a/Music_List/.project b/Music_List/.project new file mode 100644 index 0000000..f59c152 --- /dev/null +++ b/Music_List/.project @@ -0,0 +1,47 @@ + + + Music_List + + + + + + com.genuitec.eclipse.j2eedt.core.WebClasspathBuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + com.genuitec.eclipse.j2eedt.core.J2EEProjectValidator + + + + + com.genuitec.eclipse.j2eedt.core.DeploymentDescriptorValidator + + + + + org.eclipse.wst.validation.validationbuilder + + + + + com.genuitec.eclipse.ast.deploy.core.DeploymentBuilder + + + + + + com.genuitec.eclipse.ast.deploy.core.deploymentnature + com.genuitec.myeclipse.icefaces.icefacesnature + com.genuitec.eclipse.jsf.jsfnature + com.genuitec.eclipse.j2eedt.core.webnature + org.eclipse.jdt.core.javanature + org.eclipse.wst.jsdt.core.jsNature + + diff --git a/Music_List/.settings/org.eclipse.jdt.core.prefs b/Music_List/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..ba72f00 --- /dev/null +++ b/Music_List/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,12 @@ +#Sat Sep 29 20:17:18 COT 2012 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.5 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.5 diff --git a/Music_List/WebRoot/META-INF/MANIFEST.MF b/Music_List/WebRoot/META-INF/MANIFEST.MF new file mode 100644 index 0000000..254272e --- /dev/null +++ b/Music_List/WebRoot/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + diff --git a/Music_List/WebRoot/WEB-INF/.faces-config.mex b/Music_List/WebRoot/WEB-INF/.faces-config.mex new file mode 100644 index 0000000..376961b --- /dev/null +++ b/Music_List/WebRoot/WEB-INF/.faces-config.mex @@ -0,0 +1,5 @@ + + + + + diff --git a/Music_List/WebRoot/WEB-INF/faces-config.xml b/Music_List/WebRoot/WEB-INF/faces-config.xml new file mode 100644 index 0000000..3af69da --- /dev/null +++ b/Music_List/WebRoot/WEB-INF/faces-config.xml @@ -0,0 +1,10 @@ + + + + musicBean + pulsoconf.music.list.bean.MusicBean + request + + diff --git a/Music_List/WebRoot/WEB-INF/web.xml b/Music_List/WebRoot/WEB-INF/web.xml new file mode 100644 index 0000000..e07f426 --- /dev/null +++ b/Music_List/WebRoot/WEB-INF/web.xml @@ -0,0 +1,73 @@ + + + + javax.faces.STATE_SAVING_METHOD + server + + + com.icesoft.faces.uploadDirectory + upload + + + com.icesoft.faces.uploadMaxFileSize + 4048576 + + + javax.faces.DEFAULT_SUFFIX + .jspx + + + com.icesoft.faces.util.event.servlet.ContextEventRepeater + + + Faces Servlet + javax.faces.webapp.FacesServlet + 0 + + + Persistent Faces Servlet + com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet + 0 + + + Blocking Servlet + com.icesoft.faces.webapp.xmlhttp.BlockingServlet + 0 + + + uploadServlet + com.icesoft.faces.component.inputfile.FileUploadServlet + 0 + + + Persistent Faces Servlet + *.faces + + + Persistent Faces Servlet + *.jspx + + + Persistent Faces Servlet + *.iface + + + Persistent Faces Servlet + /xmlhttp/* + + + Blocking Servlet + /block/* + + + uploadServlet + /uploadHtml + + + index.jsp + + + diff --git a/Music_List/WebRoot/index.jsp b/Music_List/WebRoot/index.jsp new file mode 100644 index 0000000..0866042 --- /dev/null +++ b/Music_List/WebRoot/index.jsp @@ -0,0 +1,26 @@ +<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%> +<% +String path = request.getContextPath(); +String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; +%> + + + + + + + My JSP 'index.jsp' starting page + + + + + + + + + + This is my JSP page.
+ + diff --git a/Music_List/WebRoot/whatsgoingon.jspx b/Music_List/WebRoot/whatsgoingon.jspx new file mode 100644 index 0000000..b500fe5 --- /dev/null +++ b/Music_List/WebRoot/whatsgoingon.jspx @@ -0,0 +1,44 @@ + + + + + + + + Whats Going On ? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlClpsblCnt_bullet.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlClpsblCnt_bullet.gif new file mode 100644 index 0000000000000000000000000000000000000000..0ff932d469b16b5ab68d3461a373deebf3bda493 GIT binary patch literal 550 zcmdUsw`u|b06@=@s8Q23obS@MgmAc9RPa0UaeLum&?ImFq_S0GMPXiV7J>51gTUi#bVL# z_eUZTi^XCxnY3E1(P-@V`=ilFr_(8w%5Jwi91dkNSv(%^bUJ3US+CcR$K!UpJs1p{ z&8AAFYPDJ#ji%9PsMTtl%?87;)oOLQTn>jLpU=zXa<|)UFc>@@kJIT?C={Vks8A@R z)9FMa5sSr=$z-WiN~Ka>uQwWv*6a1jWRlC}d_G^bTAfa(;cyuEw@`ktf9=$nXHNi} z^c|8wE24!1sbm%00Z&D26bpd%Q4}-_O%w8HSBH>@KoAMAY=LkWI{FYikk5%6A(e3h z3OG1Ef1W3vTX%8j^WR)CS9n3=ZPR%~gtUBj4Kcp33?_@o-Gert@M|ad`>iGNr04Uf&IJqm3>+C<7_0%S)Gvwv literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_collapsed.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_collapsed.gif new file mode 100644 index 0000000000000000000000000000000000000000..09e0b9f37208c3f7ad8ea541ccd1b1b35749c0d0 GIT binary patch literal 1234 zcmciBi&v9%7zgmFAVZkJh~RL{1S=IO2gpSQ4}?<4MImM!5QD*~ghUETGL?(K5kf&O zLEARG>K^wa<#>Uk#0YkaXP@>+~Kcdg~`F)?~ANYM46zJ_0Z;P@; z8FZ)}Nu}7It8A{;I{#AnVP>8Cje76vB=2nUp`s?|dla97*3i5LTt!<%eglr!9&wxO zUPU=t^Tdnv38nnJ5?r^P_>+}^&Sm}7YWQ;JPNfnP5vq$2UlXv)%4k~bWK=QqE z@-8SX2Bi=B#l-??v0#KoqtWT~M)oiO0JVGtzySK-iva_eOeTZPXR%le4xi0t*A1yS zYq=W)tn@l5w7XqTlH0?4C1VK-gT0p85i^W4?afeFB zk&XAuCnORHU#^u%5ukEPI6AFRC|J5#g;J?fsRpLz#?TT6d1Yl~ z6}GmzwzjsuzHVGM8jb6(jYy2IVMuLkY`j6dg|oT2`418pQd?VF|NdWGP%z{#pwL^W zCi6W}!I6!=KN(M9@yQMRY^ocW9nk4S@~-~T_kE~PT6^pxgL>PsN4x93c)XYDP=4S& z2OG>zl)aQ=QbW8IjTzFnoUQ-F;?ua_j_$$|%`M6|=j8`0{lW{Z{9Q{3)-8{}v1`Iv z=}R2LW$7LfjfU)a{&2f|v;|7egOP894@sLq~@BC0F{sT3V2DbnJ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_collapsed_dis.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/PnlHdr_collapsed_dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..cb8eff816e777153b3dbe9f5aa3944fdd81735e9 GIT binary patch literal 1285 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 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/ProgFill_Indet_Bg_active.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/ProgFill_Indet_Bg_active.gif new file mode 100644 index 0000000000000000000000000000000000000000..867d0b6a879aa686869b622e69f89ce93a019b64 GIT binary patch literal 13743 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
(!N-bR#tmFIi2hRAEr?opby8j1a#-QUJ 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 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/ProgFill_bg.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/ProgFill_bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..0ae001194c0fd218d8522bd58bb838377355cfbc GIT binary patch literal 94 zcmZ?wbhEHbWMtrH*v!BXx#L*mrh`%Y&rCmYdES|85$pCQtliUl_fhp|T|gEau8n;`uF literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_LftBtm_off.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_LftBtm_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..c454c9594496928ac6ce7631edc9cee9daef4224 GIT binary patch literal 95 zcmZ?wbhEHbWMN=o*v!Ci^XARRk00Ny0*XIbz&srg2{MC$Mf<}V&6hEv@mqgCnZLbZvB$i$U#e>ksc|VC-`u0&x{hIw R(jTs-fJ6-~rV|_t)&MSwIpP2S literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_LftMid_off.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_LftMid_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..d794db35efd82d8f8efe6c68c47468b419aca01e GIT binary patch literal 123 zcmZ?wbhEHbWMNQX*v!Ci@7}$iKYxDz{{6>~AK$)x`}OPB*RNmi+`04r|9=K-K=CIF zSXc){g3MrG(Gc(~Nt-&|Z^PQ-^V#~6X3l+>x#oD*79B--qe6}!hHtFo|Fkz5X!I~J GSOWmnBQMMV literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidBtm.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidBtm.gif new file mode 100644 index 0000000000000000000000000000000000000000..b7c0adf2063bc0d6d29d78f5c965ea62dbdaaee7 GIT binary patch literal 50 zcmZ?wbhEHbWMp7rn8?6z>(;IB-@kwR_KksoLGdRGkYr%c0TCd11}5eyOsovn0GXo< Az5oCK literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidBtm_off.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidBtm_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..71dca8b76820550f2a19a43f4598374b4dd7e656 GIT binary patch literal 50 zcmZ?wbhEHbWMp7rn8?8J`}gk~H*Wm-^M`?fLGdRGkYr%c0TCd11}5ef5mp9k0G*}` A*Z=?k literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidMid.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_MidMid.gif new file mode 100644 index 0000000000000000000000000000000000000000..bfd7ae6885c0bd8ac34a4bb0613b16da5b044862 GIT binary patch literal 95 zcmZ?wbhEHbWMoia*v!E2@#Dv@U%!6(^y&Tk_n$w1{_x?$moHy{?04_pegFQQ0Rt%h eWC4rmfJl%T3@khbCp}lYzIegJV(7@iU=0AWD>1ow4gqTtSZli-HOxgEauH3LHfM literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtBtm.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtBtm.gif new file mode 100644 index 0000000000000000000000000000000000000000..2177b63f6695c075330ed0dd208b69d282de0ec1 GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*v!E2^y$-|KYzY@_3Fu!C%=CEdj0zK?c2BS+`04h>(~GP|9|`T ijR6%X{$v3Q=zvI&84N7k0h%dGBv!~2Id}*%SOWmv5GDQq literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtBtm_off.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtBtm_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..36393d37af136784b10c6017ea1aeed1d77817fa GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*v!E2=+UD)ckX=s`t{SNPY)hExOMB+jT<*UeE9JD_wPS{{`~*{ ip8*vp{$v3Q=zvI&84N7k0w*U;;&|DRd?G-Q!5RS4!6#7w literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtMid.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtMid.gif new file mode 100644 index 0000000000000000000000000000000000000000..69b04479f11a19c9ca1afef79ae825631b200481 GIT binary patch literal 126 zcmZ?wbhEHbWMNQX*v!Ci_wL<~A3uKm`t{SNPw(Hq|NQy$hYugVeE9-ozkB!Y&Ye5o zzkg>y0*XIbz&srg2{MC$MZ3ULRebK(TQQ8sABbf=QJ?p8%9>NNG(31t8!nRAA@t_d R1MSuYj~qfc`not6tN{gfI&c60 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtMid_off.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_Btm_RtMid_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..1111451888b878a68dbdcc864d1deae975385519 GIT binary patch literal 124 zcmZ?wbhEHbWMNQX*v!E2^XJd+-@o6vbLYp8AK$)x`}OPB*RNl1-MaPv|9=K-K=CIF zSXc){g3MrG(G>7h6rB6@R@IK_vOg3REvLPxlzMYeD$o1OaUU7SI-WoGm=8E7YN)s| HFjxZs@~baa literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_LftMid.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_LftMid.gif new file mode 100644 index 0000000000000000000000000000000000000000..0817a0f0003252a00ecbd086855abfde7d88c87d GIT binary patch literal 133 zcmZ?wbhEHbWMNQX*v!Ci_wL<~A3uKm`t{SNPw(Hq|NQy$hYugVeED+g)-53S+qZA; z-o3kX=g#-<-x0R>w=ZzheBz{)*16_%myXLGi7zqS bKPJ7glK<1tY@ngT)7R={)`St79?c2BS+`04m_3Qut|9}7f iodFdn{$v3Q=zvI&84N7k2Al<_92*suo_Qe1U=0B7-Y0Yb literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_LftTop_off.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_LftTop_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..3b313915c313b938c4bbcd8ddd7646509eda1f5d GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*v!E2^y$-o|Ni~_`SZz>Cx8F`{q^hD?c2BCzkh${&Yl1N|1)3! e#h)x-F&z*IGJ}DI+kmry%PM8g6rTrz4AuZ=2P5JD literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid.gif new file mode 100644 index 0000000000000000000000000000000000000000..6fe8d90ab598ca0931a35d026ce35005169b07cf GIT binary patch literal 97 zcmZ?wbhEHbWMoia*v!E2@#Dv@U%!6(^y&Tk_n$w1{_x?$moHy{>~G(`y?giW`}gk* js6g>23s^u0M1ss6z}OF0RnQ$q}R}$Y2csh;1hW literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid_bullet.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidMid_bullet.gif new file mode 100644 index 0000000000000000000000000000000000000000..9a2e3a9a4ac4afe2ae71ee4f6b6586d15676bef0 GIT binary patch literal 1242 zcmcJO`&Uy10LL#3&v+h(`M`6ML^DOOFbE-5O$!7)*b&25VhlJXXhs|>4x&ggV?Mwz zQEA8!G@+s6x!udy?sm7`I|l87W3aK8TWmZQY&^D@Ow#^`zCV0_{hssre!qKDlH%g2 zYk)O?3jjDA&g|^0(P(ry93GDc1VOc0Ju@@I*O}QWoz-exTwLVwc!x!Qs#GczMY&w= z@t$6b#Uhu>^?JQPAUMDgS4i;iYY(pe-ZeKr*F31Hl;Ek1wtY8Sj!Orq3iXDPdpVCF zKA%51Imzw<6*x}gVosMUu9%Tl-jGUTVi-0tF@fXw)YMekWu``>ImZzz6pBhIzWuw~ zAOyX5@xo@aWpX87L#SuTQ^H^gg+jaCegacE>@(?n`I8~-!otEAeZ%R({)63^QmH)3 z!=f+LDTjupr>B>emfX+XdYzs+WXKxOum&{S;O?2W#|vQ9e+L1`LWP~0Os(FRjsZFYy~lMcxNA)dyQo#smRx4|eX z1tBmSLO;iz?qWQy>sMvmXf~To5Cp;kK{ijOGh5VZjlp1mV8moH` z=YsQIpXx)fkC0b&mM1$5N?a~y7KA3Ux-Sak>A2SEa*kWA^*!>7JnU`@=bHvzNso+N z-=2RTOllXygQGKcdv#Ms20pr~;0`K9GoSFgK`=w6oU+*-_KtWwOBt2T+1(f-5?RNs zVxuKrKB^v3YfWPyt~D5phzO~a4m1k-uOo{0?{|FM1hx!nD#VHle0g2}u-omPpP!$b zn{&Bb%gf8a|E#b@pZ^jfU-_#~0KUsWkKgOtgkD#JNlEPdjZ`L5>i;DLptNoRe4|&B zSNr}w*x>y}fG^<~oLZYx6zV@NytLadG%ByL+3Tmh^y&|M0?$w%?4i9KL1vV<*))DD zBZ|~bb|#HNOmB?b7nVi%@sA_B%99U9?2jSplgU6=Vj?l#Z}2TroAWc`n)4d+#;{CL zSzuVssZsguC)Y^pNvR|fQbvytIdu^EzLXG@8xwbeOM7-FVBOA|@c62-s*vOyK7Flc z`)^yKQeuz13%idnGHzrL4Pb~ua(}4DeS77~mFLf&KYjZ2+O=y>o;-Q<=+WQ5fA8G6bNTY+_wV2T z`Sa(+ix>a?{kwPX-p!jgA3l6|_3G8HvspfV{0Nl&{{8!xFJFHA`0?!7vtPe{{r>&? z+qZ8&fByXc|33q{K=CIFSgQ_*1o?@9?X|(}4DeS77~mFLf&KYjZ2+O=y>o;-Q<=+WQ5fA8G6bNTY+_wV2T z`Sa(+ix>a?{kwPX-p!jgA3l6|_3G8HvspfV{0Nl&{{8!xFJFHA`0?!7vtPe{{r>&? z+qZ8&fByXc|33q{K=CIFSgQ_*1o?@9?XAPK0u3uc1xAjCDpFSM?OX~DYuOm49uD5& z!LTpBIfCbd&OBvymd6u%!scA{Sd`Y^w)AvLlSED=v%Ii^xT=#NCnu9iy^{)4r=X51 z3yW-2uahd*R8?*+E}ofwJPWv`IXK$<6{A&GN~<$5X+|rq_0!y}zDK=&`wr*5LLwqt z*Bo@x6k$^5*`u{BT1!xnN12z`cd?VwO=Wg|{`@;dkJz=8l$DvKW=b)?R?*|&;4x6)M(c~P0`19w_w{PEm{rdIw>(~GP|1)3! i#h)x-F&z*IGJ}DI-{7RD`mSR#4%U{00{00(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidTop_off.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_MidTop_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..e3d495c44712c22d640d6497896890c9ff16b4b5 GIT binary patch literal 43 scmZ?wbhEHbWMp7rXkcKtb?esu|Nj+#vM_*v4u}BBFfcK>#4%U{01I9T=>Px# literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtMid.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtMid.gif new file mode 100644 index 0000000000000000000000000000000000000000..5e446eab3d9c76a5ce1e669f52f48525567fe3c5 GIT binary patch literal 127 zcmZ?wbhEHbWMNQX*v!Ci=gysvA3uKm`t{SNPw(Hq|NQy$hYugVeE9-ofBW|B-Me?U zZr%F+{W}8;DE?#tGj%{D$P5M+oe3vZCFg#~P0`19w_w{PEm{rdIw>(^ViZvFrN zp8*vp{$v3Q=zvI&84N7i0Vh>N=YG9)X5;<&(-fXWO!7!tqh-B^Q}K9lg1UR(YlrzF Q2jT-9L`of|aWGf|0HHWHjsO4v literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtTop.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtTop.gif new file mode 100644 index 0000000000000000000000000000000000000000..60a45a185538724257fcc1c1e6961b698c7786f0 GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*v!E2@#Dw$@893KbLYc{4`04~dGzSfty{PL|NsB}`*#LxK=CIF bSXc){g3MrG;l3bJ6rjPZs9<6w$Y2csx0N4% literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtTop_off.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/Tab_RtTop_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..34e52d894e86416f20982ec5784e225c233e1dca GIT binary patch literal 93 zcmZ?wbhEHbWMN=o*v!E2^y$+_j~@N_@#D^&JD)#){_x?$moHy#-MaPv|9=K-K=CIF aSXc){g3MrG;rhVREWo(5EAV0`gEat}p&>#5 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-ff-dis.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-ff-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..96240f808afb9f670e4281b03363eb89b49734a8 GIT binary patch literal 228 zcmZ?wbhEHb6k-r!IKseiZ(H%hqtkBQym@D1%Druc=T_(6+fjaZOU}LRW%qW~-&_-Q zZ+GLp9ToTYcb;G1^x)8hJDc(;H$pFjWq|DORHQ2faP z7S;igAUhdY6BW{WQ!=BHn%3srR$HvS`(w`aZ9VIG5B^>&n%pYB`KOZN=voINjNpa({p4&6_vxZ7aODyYc?LJ9joD-`iDx zZ+qFzHBt9=)!y4tes@dGoy~a<4o!Ie?CHa!(;hr{aBoM&xpU|4-@pI-`Ev$rK=CIF zSXc){g6w2qO;$+jP05T(YFwLhTWqoR?vFXwxAm-N*yy$I8eg#F8W}gmRiP^rq^2_D zp3IUH6J9y#&{H$fHjf3TWn<4hf5tkgV!`=m+Z_thF5E9PVJL9>@KG$ksad?TrMa!W Pp{qqhy(;H$pFjWq|DORHQ2faP z7S;igAUhdYlNHi>Q!=BJ8rSCB7Fw*m`(w`aZ9VG`Y%tn)jn7$gjhdU{D%XVxaw3em zC$qGqI96^t^wdnYy<@>?+1PW>pQS1qE;#?JT%n-t!u>)Mh62A2AI0*Un#C(yn%mkN Ox>_{U`&A?q8LR;~ylF}R literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-fr-dis.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-fr-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..6b484ea321d00db7ceb743a529b9754190611e09 GIT binary patch literal 229 zcmZ?wbhEHb6k-r!IKseiZ(H%hqtkBQym@D1%Druc=T_(6+fjaZOU}LRW%qW~-&_-Q zZ+GLp9ToTYcb;G1^x)8hJDcG3T OXw*>eQ;|?)um%A6F=!zG literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-fr.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-fr.gif new file mode 100644 index 0000000000000000000000000000000000000000..459b56a02101fe0e8a10505156e850b650f6b662 GIT binary patch literal 229 zcmZ?wbhEHb6k-r!IKsg2aYw|beQEEu1b*C?`S0)VSF22KtqA`7@!hB0@vmOJ`mojS z&J3ZCJHkF6E&p^N=j+L)Z)dwd?vDGoEB5_Hr*|71zkK;}>(;H$pFjWq|DORHQ2faP z7S;igAUhdYlN8c=Q!=BHn%3srR$HvS`(w`aZ9SV^Hh)`tSIbCJEbZN=voINjNpa({p4&6_vxZ7aODyYc?LJ9joD-`iDx zZ+qFzHBt9=)!y4tes@dGoy~a<4o!Ie?CHa!(;hr{aBoM&xpU|4-@pI-`Ev$rK=CIF zSXc){g6w2qO;SkfP05T(YFwLhTWqoR?vFXwxAkmp*&@_%Ezh(-K-+1Gc0gu=md7;# z;Tbx77gSPD^SbbGX-qfTHRF6g%M&Ks_*3t?8xqAh?i83aB(gDl5G!mdtZZ&-ZENUk N)==+Lkx*o?1^`XbV&?z= literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-last.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-last.gif new file mode 100644 index 0000000000000000000000000000000000000000..5e0a35ceb612a6fbc310983409ec1afeb41015f6 GIT binary patch literal 229 zcmZ?wbhEHb6k-r!IKseiYen##8A2a-M0`G4{_54M_Zyu)Z1wxNBkbGR?$00JeL9fy zZcE_5zrR23iv74R^V7bxSF23Fo@{!z!SUnnxKF#|zkK;}>(;H$pFjWq|DORHQ2faP z7S;igAUhdYlN8c=Q!=BJ8rSCB7Fw*m`(w`aZ9SWrH}f@I%L|<$py@Ql+o3W+!{eHO zvV)1pg_P9OqAq-V8rzL_%{b3?@)475{Hb@|3`u+}cM8lE64@9&h!r*!RyH@awl#D% NYpD0BNGLK`0|4i@V`~5a literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-next-dis.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-next-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..12c2f26c6c90e2a2fb68eac267988b0d55a463e9 GIT binary patch literal 214 zcmZ?wbhEHb6k-r!IKseiZ(H%rn>QaGopx_W`S}G-_qG+@+fi}<-krN!a_(&}JGVOj z=9;Mc`#bOLZhZdi>AhX`4-QSZvpMh1hU9y@YVT}JdGO%DxpU|4-@pI-`Ev$rK=CIF zSXc){g6w2q4OU3&P05T(YFL|dn{Bc7?vFXwxAkoAF@CRe>OuP?MjqkVi>v}FQYPN1 yUV9l7TG>mjc2(>bZ&6|TR(4wa5L2z?bW!$gvwP=VKKO0-%|+|G{Td7v8LR={bYM0B literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-next.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/arrow-next.gif new file mode 100644 index 0000000000000000000000000000000000000000..d23a293b2421fab016e9acafbaddc6ad96cd23a3 GIT binary patch literal 214 zcmZ?wbhEHb6k-r!IKsg2aYw|fSFb+q%lx<_?EOZkcN-i(9mu&eL+I(;H$pFjWq|DORHQ2faP z7S;igAUhdYgB8+xQ!=BH8rJ6AW?QVi`(w`aZ9UuhP2TGqdeT0LQA{ZIBCAILkBN7x y*IotzX2w#hT^0MMdn{!9R(5(iGjpxwbXl%#vwP=VKKO0-%|+|G{Td7v8LRQaGopx_W`S}G-_qG+@+fi}<-krN!a_(&}JGVOj z=9;Mc`#bOLZhZdi>AhX`4-QSZvpMh1hU9y@YVT}JdGO%DxpU|4-@pI-`Ev$rK=CIF zSXc){g6w2q4NyqyP05T(YFL|dn{Bc7?vFXwxApAiTfBHP<5Tn55)3Zk%8Cw`bf&KO w64=17(;H$pFjWq|DORHQ2faP z7S;igAUhdY0~FGFQ!=BH8rJ6AW?QVi`(w`aZ9Tg$EMB~s^P%}<9R`=_jguTM=}cV_ wV&K5APzGuXjS`_)vBl=XqIxD?-m!H0`jxBk0+=;;&0Pt{R1poj5 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/bottom_menu_bg.png b/Music_List/WebRoot/xmlhttp/css/rime/css-images/bottom_menu_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..b244b124655a3f7cda024790aa9614f2c47a40c9 GIT binary patch literal 101 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{K!2~3KrY&p(QaYY4jv*Y^drxlUWpLm)>>&It z-c*@o)pU*jD&cCJ#>x+@Z+k6b4=8`VYSnM?^7A}OKSX!B1NAX@y85}Sb4q9e0O>&It z-l&;n)pU*jD&cCJ#>x+@Z+k6b4=8`VYSnM?g5%u(R6_+81NAX@y85}Sb4q9e0QkKf A{r~^~ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/bullet.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/bullet.gif new file mode 100644 index 0000000000000000000000000000000000000000..f4b5ff50d50bd3e1cdb647dd03ba3b60d86c7d72 GIT binary patch literal 280 zcmZ?wbhEHb)kao^1MhqWIDXjb_i7>E>&2q~|Nm#88BqMm!pOj&$e;tV0puqJHq!$W3M5tu^e^Og z;mES$0+^%afWfCgpY&lc{k+=Iy^i_)6f2^u#!&UaL_!_+S_ix!C(ylq8nY) literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_arrow_left.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_arrow_left.gif new file mode 100644 index 0000000000000000000000000000000000000000..6039e8bbe0d42a2f188c0f1cd75aac90beed9a0f GIT binary patch literal 211 zcmZ?wbhEHb6k-r!IKsg2aYw|fSFdiZ2>!S$_T#?He}8{}I*{{mN7%Qs-5<94y;^1Z zXwEXMIrcb-$zkK;}>(;H$pFjWq|DORHQ2faP z7S;igAUhdY0~FGFQ!=BH8rJ6AW?QVi`(w`aZ9ThNmn`1w@z^{%fWc*YVuQmaovACP w6wF{)a_M5~>Af~Go$tc5?`cV-7D+03M4u{HXQemq^3(U#u_dpLJ26-T0RMbrqW}N^ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_arrow_left_dis.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_arrow_left_dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..4313aad0e991f77af6fb0ee30880194b481563d9 GIT binary patch literal 967 zcmds0Nlz027#$)eTvS|6Mh_4V95h~xaU(IoV2Ct^3nqp@i5jDcH)B*16Jo0dyeM)~ z8WBtYg|>8==|=Z*uNDCKs-Ut3unF*c$JB&UvW+e}8POFL2S==f?@%WrhyW4*O8hAUSZQ&V5m82* z#Y-qHt9qYB7r=m*RO)A5PVpsVZxS#@b}%v)FB^mFxm7?J2_v_stwHJwm`Nd=lAN?) zv;}c?g)InECg1SKIZI4zS8L--z!o4`P&}LzBv>jBCKk;2wvi~umm$dUL=Ma`naay# zZrdE*u#+Xr9O;d1;b|rF4PKAgouPR>EnyTNPAN8~;-?COI#iFBoQy(e!I!95DA5$& z>gahI$$*s-p;9Hx#iamOCb(5QC3SRbrp(?~qxKo!wks+SIdLY$qY>V~$f2aogo6D|^IMWucbNCOu6>xxQ_V8VbGCrmz+74qMBQ%rU;l0H(3WqzvET6$h_ z&;pyvoAC{I^snCYW6I=r$A#?Tnwyn$`j97~Oq%?YX1~K1j;(+(syG-S$b20f!CsDF zfmFp#6&Uo)21_xbiyD{MAgnwg_v#N^WBDgWhAI%9xu1P;3dHzW|X{T&#pe z_}NHt+Pg*PWfN0YsWn%7G#F8|)4V?|ddPyE+$3`%w;!S$_T#?He}8{}I*{{mN7%Qs-5<94y;^1Z zXwEXMIrcb-$zkK;}>(;H$pFjWq|DORHQ2faP z7S;igAUhdYgA~$wQ!=BH8rJ6AW?QVi`(w`aZ9SWV3Ky?)d!o)9Ah!7~SA&E^$+WH# xt{E~MmtVd(^j1x#e_e(4J_C`bdXYK}OLo34x6+f3ewA+g&21K$hv=TFobb|E_v z2}AM#68xhi0;~Zv8roL@LMb&msr>?IFg*F3F6j*Im-NP1M)O2-rZ+B2L=5s;0l?Jf zQ~+!d38f`3yCE}wzCQC4E;V(MF%Bb>0bZuFaHXkjgi(C)f`gJVT1w1A zVh)BvIaf4?QmdRGlW7=XRh0T2ohq3JP>hu#=_1C+DM2H635&~)@UKBTKAu^|@Njgp zgwm=lCi&yPy&Q~qNFr4N(A<7nr*A`3+T`pKn+01e?`5PhMtc3hH|Pk;0A98@6kKDn zK(b$L(R?tWezfCbae0&~TEgO}j|xvHj>tNhR&;vf^f&Nvh2Z#FjQ>VWt$P^FMy_1e zw>!B4O6A{M0^9-&ImvKFLuv7ogYbrCLKBLW_|b0(IcX)BDt)pOP}->4ZH?xsDaFm^ zHe9}XhvI2?+UG(UX=z1rGcv}M0-VB3YyQ|QK?_7u^|BJliw+I~l;Dd9gLdLspZha2 zXQhkr8SrzelPLzc0yC{<=7ImBxOs)mYV;IXBYA5?^l?Q~zsr?Ss7WQeDB`?2#%@ds z$bUp-Ve=*g!H^?=GyVMpQr?fW)|+p?dmC&kYhBrm2xg*V$Gw~QxwqW#`R?+XYsjvB z!$-R}w|H9y_CIehpFMd%cxh_rsJeVNc+fV#y}RmIpJTOb{_%@y&r-5ZXkcEQxmCN| zyQewPV}5qA{Xy5(=RGyOwYtHsE!BIklr>fyu35Z(!{D#2czC~=8>m`o5tol27`|C{ bdMRZZ#~Y29@6nw~qje6y>N~Wp969v|@{bh( literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_button.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/cal_button.gif new file mode 100644 index 0000000000000000000000000000000000000000..1e90682a9500f8e5fa9d03eb6e4119cf69f68f12 GIT binary patch literal 1042 zcmZ?wbhEHb6k-r!_|CxK(0R0CQ~9l@pZ+gP+;Z`C`KGdECtv+vn(*Q4ulHYme*F6D z!pH|7qT-S7Vl zzyAv&rW|HF`yFFxOW@n!Alm!H1<0;2zOLT^3$RIskVfAZOtr(Wf($@#w|?*Htd z&YjQyFN~V7>v8qQhcl173!HSSaD73^s=FV*{i@&mXv6u}4OYIQmXQ!N- z@W0)>VCC(w85h=`dA;(~>lLS7AHVVX{pX)6PQD79c;fBnA9-tYSDkrv=JwnFEBrck zJo~@5eEa1$|NHD#oq656`^BPTudeaPB~t}W8z!+63!M!D=1N#g*$O5o h_bIY+FX2(D=wNS?3}X>wI!SnmI`6+f@e`hRu8|NATd zzd8HsbltzTO#gp>0qOet^XJ70{||=#UB~m~?W6zKr~h3I^w+kZH<$mv*z)T_-~Z?P ze_oyQ|IfECU%uSBb?fuz&;S4bXBZqn@h1z|Avz!u6ekSqiyMLhnp;}i0-9KYx_f$i zS(^JM^-Y{SZEClTPmd;(s(sH4DN|XqZYzFcriC5dZo&fcye9n49NcSqBrHVq6@^sz z)g5>C_<3pYXxmxy^)~xoyr?E^sO8RZ>0)!>-9RUCPG$v3QIC6pckZ$}80cEsGV8d= z+iIg|(}FH_do_-JpJfS~Lx4-YQ|25SKJ Cob?U> literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/column_sort_asc.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/column_sort_asc.gif new file mode 100644 index 0000000000000000000000000000000000000000..cb2d88286ab7dcfecdf5c7a9ced1ee033f5c6578 GIT binary patch literal 152 zcmZ?wbhEHb23xhQP9eOuS literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/column_sort_desc.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/column_sort_desc.gif new file mode 100644 index 0000000000000000000000000000000000000000..ad5ef7288b0d2d0e04be2df44214a6a0f014dfbc GIT binary patch literal 152 zcmZ?wbhEHb#A5K-xKnIzS9)~u8`@F^N4AuY))is^~ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/connect_active.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/connect_active.gif new file mode 100644 index 0000000000000000000000000000000000000000..b17950f237cbc077a35e204be105925a037bdf08 GIT binary patch literal 3760 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 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/connect_caution.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/connect_caution.gif new file mode 100644 index 0000000000000000000000000000000000000000..5dae0b7ebfec51ce64035435138a48e91f753abb GIT binary patch literal 6196 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 Zk+MdCScO`euVXR{&QLj?HkSfW^cPqR8;t+} literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/contentContainer_bg.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/contentContainer_bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..f45be3a70d8238101cd25599306e62288d519826 GIT binary patch literal 131 zcmZ?wbhEHbWMuflu$h73`}gm^fB*jV>(`$@e}4Y_`Su06FfLlGUqw2TKDF`z5*MOlHB`S7QU~!uY6!ZfrpM% O|A{3*C7_0%XNI1{{ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/contentContainer_bg_up.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/contentContainer_bg_up.gif new file mode 100644 index 0000000000000000000000000000000000000000..77cc11e025729056e9be122af4cdd49304f9a97f GIT binary patch literal 131 zcmZ?wbhEHbWMuflu$h73_wV1oe*OCX{rjIke}4Y_`S8BurH2^n0AqoHh literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-left-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-left-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..3f2545f61f93a69d179ea1305cc3f63c58230334 GIT binary patch literal 48 zcmZ?wbhEHbWMN=uXkcWxckkZ+|Nj+#vM@3*Ff!;c00Bsbfr-7RpOfwOeJ%!T085Ar ARR910 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-mid-bot.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-mid-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..6f343a841e5133dee82b093bd07c4a847fbc0d6e GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*vtR||NsBrv~knHLkBkksZARX9Xz;j!Ga4HE*v~~aO1{}3l}Z~ nDgY}45sE)q7#SFN7<51!kQodt+y!&DwkWACO`PB^$Y2csomL~# literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-mid-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-mid-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..27fd083039befad632fa14f94ed90e5364e89acf GIT binary patch literal 47 zcmZ?wbhEHbWMN=uXkcWxckkZ+|Nj+#vM@3*Ff!;c00Bsbfr+grf5GXytPIuwLrx5? literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-right-bot.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-right-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..6eb85120b4d000567c496df97a247bcbc9039f83 GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*vtR||NsBLc;Vv4jhi-Z+O%Ndf=!z?E?l_a;sp>mc<|ur)vFgS oTnJPHR?DFHlZBCiftNuC#08nbz{0&jW*eKK_sdq7C_x5m0Pyf7qyPW_ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-right-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/off-right-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..cfa1794ca55f9e857c34b59b83e0dc1a3d4749b3 GIT binary patch literal 49 zcmZ?wbhEHbWMN=uXkcWxckkZ+|Nj+#vM@3*Ff!;c00Bsbfr+E1pN(C5uYv}HH2_mW B3$OqH literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/submenu.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/submenu.gif new file mode 100644 index 0000000000000000000000000000000000000000..c53b5d1d595b1d87fe509fe002cf1c62ddae84fd GIT binary patch literal 67 zcmZ?wbhEHb5Qc*5DQyLGH1SOXR~pgL$WWqDX=O`1Jez z?d8|shx$=pmAKC5I**I&O5E>v^SjIE!IN(UzkOeH)l_YjvWcv_daAct)lPA`W@@%Z zHBRq#?bL3qYMoJaX-ZpCDNM^%U!3G*Eh8;o4iJj4mqmQ*@yR({g<{(Kq0IFgETB@g$Ikl1{y5Kxs=HX?K(!HkF{jd%J_<0 zSWsMRjgL5u0q~+7qfv{M_yJ9(u>(#BMj@;LgEW)Sf(MJi2HH7Mx+#+r=3*F$KGu@y zykzn9+&jf{!q|MSlHOx_f{Qv)-fjFS}lLf3$2SkGGWMGw8prUo^vj~r} WgfFv6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LV00000EC2ui0096V000Og0N)98N3b2cb?elnLx=91xpL&ljT09x P9Jp`aym{-^Eg%3p3jURp literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/theme_bg.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/theme_bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..0efaaded62bc21f88ebd838a31f04cd03162b10d GIT binary patch literal 101 zcmZ?wbhEHbWMoig*v!E2$z(R1}&O+n!)OwNr8hl*r;SQxAUs829B literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/theme_change_bg.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/theme_change_bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..72b393dc38ae31022f00578a513465f404c7b46f GIT binary patch literal 342 zcmZ?wbhEHb6k`x&xXQrr|KFc~FE4zZC-P&h%eO^pzjkN*SY`cfk@D{o?LXIf{65+7 z`*`#3{e|BbYkZx-@aI(bw}lGdm+C#7Y5Zf2^N+P|_m)NfSm*xdbnowjr9XGX{rmgp z&zb()lQixx^!fMi@9(4aUuUy?n8fgFPv-48u0J*he_9*x|Nnmm>H)={EMUWQKqSad z3~a>?lM6g_r20=RDLQ$CVTK1crxs6#l)%9Q0ZnX1J!hFW{t&S6aee4i*rL?VSE9tA z+A?WkyH?FCEvXtODbd;{Ib|UyP6a0609kfHMLrR6RxTeI7I|(CerX;_#sF0|W+nk% Xr6nOMVofd#5*xQ}+rGoak--`OR26mt literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_document.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_document.gif new file mode 100644 index 0000000000000000000000000000000000000000..1df9ca2079402b0d3244173bdc081396ea3f3451 GIT binary patch literal 581 zcmZ?wbhEHb6lM@+c;>+H{@ahc@4sJu_4(@SFQ2~s`2FYahi^a5KmYji_n&+3e%yHT z_5S+bN+xM%l zKeunW@czs9OD{ilZoTm5@87HMKHqx#?fsW;_doo2@Zrb3_up^40owBA)YJFxzka{* z4(OO4H{X8!`t$dlci&3a?Eeo23_}?x{$ycfU~pj20eJ!xCk*V18XTIMTUy)NJ36~s z?RxuqrC2-dcr;{rv<-W8C$-zjFfr>$+S{qwY0d57=du=JUuvmur#_G0KtNM*Y5zPH zTV+!r`y=)&cKf8cZH1ZG#mtY-V-pl)Ji{c%&UT{Bj?Ku}gi*kZiAnTskA)St%5^R! zX4O|McJiFpZTUo)c{#qa{oFBO{qcQu|CzWxF)}qcw~JOJ6f6`tvADZWEb~r=h5&;# E0Fkxm&Hw-a literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_folder_close.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_folder_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..9cca93db733dcd7d2e0abdd80ca38b17496d3f83 GIT binary patch literal 597 zcmZ?wbhEHb6lM@+c$UHNc(TL456AvIp7QtCr#}xm|GnMye1GiAqgj9M*8czh@9`9e zpJ%N8{d)K7qW|9)D}P^4`*l6-?~4_`@78`kmHXqk=C6wZk5-%ixY7Un+lzm1cmDtT z>*?-*N6U=<|NHl1ti6^Q-!9aAKHu5BJd_2+i z>yrQDbyiQe2YuYB{_oG{7dsPwe|!1;-qOF{-hX|(^ni^LVo3+kH8|zdV0+BP1n;GcQH0{b(B{SmJn-|iDEHKKXv*{x_?AdI46s0 zU^E|-kbtPUh^<^wb6l8kA|tEdO-oU35nq*-$QX6!=Px<Fa#AE*a^W@2I+m}23{PO<$?)Bc3{P^wLl|S33 zJM-6u|NZ#<^2zYaCiB!u+K)N>^U(3oZ2Ixu^V*j8;eqtmSN;0&`t7sz+i2UHJO2Fl z@y}`7wLI_Afd2md^3gl{_UQE3T>kv<_TF~fu0Z?u>h<8C@6dYn+hz3JliR2}+_XXb z_So;#l=RnB^V3B8_vz}(Z0OL0{`~gw(sJdV)oo@`RSqU%4+V^xdfa`}6(!^7h|$+nqf3 z;)UCzJL$QF+pav@kv{n3j_=cj`RJVX>B;)+tnSZp_TYT-<+}Xz*ZAtf>A`dH%`W-r zr1H~w^3;Fy+n)I4k>;{?`|`~0%A)q(a{l`7|Ns8|`t#Y0H2?qqA^8LW004ggEC2ui z01yBR000N0fKEmMghosVeTjWtR)2pTAAC4hd?q#nm_;*fjw~ByPbW73Kmt4f22)s$ zB^L)OJxMZW9w@ z^Vsb5*X#7~_4n@e_|)t4^Y{7n`TOql_u1|B_WJwS?)C5V_ucOH-|+a=?(@>=^6&Nc z@b>r7=$0S3f=ht literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_folder_open.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_folder_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..4a32fbba33fda94f978deb1d4d80b3161085f2b6 GIT binary patch literal 576 zcmZ?wbhEHb6kyiPbde}6vzd%N?`ixp27 zTK@U*=KsHc|9*e^e75@inJI7g<$TDyiP&-RA=zLxgwLd}a+3E%H6{rCIZ zn==jnet&(q&h+Q4-k+zfet&!M@6E2?U!K1@lJ)UK+vCZO|Ni~`bTsAPueZ+^#l1h4 z{$gk1!zrde?#zBT+vM~4hOduzJX~n zZYI`~CTA?{78V(&=VT=4Z`~s!#4eGxZ~uX`s00Rf6^{V!WIi5FKYj(fz*uiVgA`V- z)2^H>{D%6L(V`BLH*PTt*s{oKiKk0j1*fEFoMPtTWpQ-wQB1UdA?jhM7RxN-?q+Z( XXc^B`BSt2ZDG|$978^G*FjxZsNE036 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_blank.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_blank.gif new file mode 100644 index 0000000000000000000000000000000000000000..b4a7cac42a50be0f24858a23c1b642a45056851b GIT binary patch literal 64 zcmZ?wbhEHb6krfzn8*ME|G@yrQ2fcl$iTqFpaT*G$ulqsPU&BH`Yr$BIa_XZZ@#yu JI*@_E8URM%6dwQp literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_last_node.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_last_node.gif new file mode 100644 index 0000000000000000000000000000000000000000..cd69a0ed3af0c906358a87c2a56d4aad43b21a30 GIT binary patch literal 67 zcmZ?wbhEHb6krfzXkcX6zkmP#|Nj+#vM@3*Ff!;c00Bsbfk~>TeA`I35@=zC5 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_vertical.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_line_vertical.gif new file mode 100644 index 0000000000000000000000000000000000000000..01b876cd0336d11cb81de3d0a20732a7f40102e4 GIT binary patch literal 68 zcmZ?wbhEHb6krfzXkcX6zkmP#|Nj+#vM@3*Ff!;c00Bsbfl0cjeHzjflm>x8}f3d8*=g*GP6vXCa9>u zzEwp@aKWN>LlI$awu9WlA`>T98jABtDa*)6@rfI@=A_8-@XPb_$d)-LrL4@zN(_&T Vj*WNs3kVAF`S9`6XD>$vYXGONuaE!$ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_bottom_open.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_bottom_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..bc6a8a1d6192a762257b7d82d9b0d23a0b722b16 GIT binary patch literal 404 zcmZ?wbhEHb6krfzxN6Msf1bhj*AM^w`*;2N^;@@Y{l7fvY^BtXqvg*IF1WEE^v9dW zKQAwOyItn_k)@X=c>h1D{&?rq?{6O8-_ZW?mEW|8d_Sb{|H|b5$KC#2U%Y?+{{M6Jzire0f3D`!r%&(S zzkl=Q&Cj1d@7%fb?Af!&k01Z~_3Qcb=l{Wgfe4`ZlZBCi!I(h@q!#2S2DXg{W)^tp zNVP6qT;%DqGpc!-c4^DeIIU?7ORJ71xJV?bYR^v9W{QwdW|tD+TO#Oiyk+Hd9fg@X z9^Ar0rTQUyT1L|1tgJ>#tm4u}T6)I1I!1i#8WKhf66}0NI=aTpOh#;y=|+-lMoi4p zW^k%2Gt5&{;9R`4-H1bqUv?h96vyPLl}3VMJc{xRJYs@ItvM-Nq9Sr4qFiOpNhxbG avJ%51qhsUU{Q`nQd_I5q`pwIc!5RQCjjYxH literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_middle_close.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_middle_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..fdec8935f12dda86644379b40ebdee9b03a9ae33 GIT binary patch literal 404 zcmZ?wbhEHb6krfzxN5|({oaGsH}5=q_x|6%f7h>Hzjf(bSjE&C5Vd_48aHK&>L6EeHuB@87?F z^XARZpFi*1x%2GVv&WAg|N8ao`Sa)h!GM7{p!k!8k%7U8K?kH9BxYK*fPB{>bXb&Ob;4W+r$4Y{QanOUYx<5E>* z->R&{wO~=Zp_qsq+d(-Iv5Au_4TX4kRrvXNd4vpGb5aEP1mp$y1k0S0QdVYUC5A^v Y$Hu$+1q6lod~oyp_{H_JnVH3^@TNuN|CP!AkGnnHH|PJkntvyi{~y!2KTYw|r%&(S zzkl=Q&Cj1d@7%fb?Af!&k01Z~_3Qcb=l{Wgfe4`ZlZBCi!I(h@q!#2S2DU8+W)^tp zNVT>uF7ou*8Pz;ZyR_wKoYu64rBz20TqF`zwP&YlGet-!vr9<^EfaJ&-m-GK&V&UH zHUc7?rTQUyT1GNLY-~nKY(g?dT6)I1I!1i#suD&F66}0NI=aTpOh$rI=|)n5Moi4p zW{ArwGt84$6koiw-H1b)Uwt0GG{@wrl}6mcJPK+IJi^>YtvM-NVxk(NVq9g;NhxbG dvJ%51qhsUU{Q`nQd_KE*e);bD&CQX)8UWd{u7Cgl literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_close.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..1a8b5602f61ca173ccc34752d0efcbe81fbc752b GIT binary patch literal 399 zcmZ?wbhEHb6krfzxXQrr|NsB@@85s=^y%l%pUZ{OAZ|Ey?SHLt^->yU-OzcXYs`=d+*%azkh$t zn#~(eoPGZO!?rUQ3yz%3+Iy($($&cqF6Yl%y8O`bo_&WVA2|Br{fDimFD%@5xbgg@ z)wk{(c=$MB(^jXM^Vc3bHTBB1m@WHjj-F&78Yuo`0jt#kksv=Yu&r@uDDcpc>Ob)$ zu)x7afc@Y_2MrdsKF0+P1_Hc2M+^^s;NpCAEc1!fT&V^YM-2@IsVQ7(tt$f_um-U+ zGH9rBb#$m|Ffg(+a4<6{iED9B=N4CDVCG=p=VK64bX62%;Nzb#Ny<=PaD$Gn)SP+E z4ASxn0(%tXrF;8J8DxayG=+ubgk%^R)05O>RSZ;Q)e4K95|Z3f(r$-_M@Gkb`}zlZ Qy>^#;^WN>9yCZ`&0Lvw*L;wH) literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_close_no_siblings.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_close_no_siblings.gif new file mode 100644 index 0000000000000000000000000000000000000000..2a633074373baa1a2bacce8e1b2f666db68cc393 GIT binary patch literal 398 zcmZ?wbhEHb6krfzxN69-{oaGsH}CxW_wU)e_t&pqzjf*Z^cFI>*r zd&q0zoSuD$mLEEvuxV?}(UWVBojUOFvD3`?jpr{-y>e~!tvfMW_J8{H>HYinZ{EE5 z`Sa(UJ9nNvd-nM8<6pmiJ%9fEKNv6&4HSQ}FfuS0GU$MGfc(V3w)((~0uLRj{u56= z9*GhRTXXs1*Q|vhOrop47750-isbmTE#-=P=xyUr;vjqEz#pM`Q5zhYHgo72a2D$Z z>1Y`6i!yX|iSiq0=oo5i8SsgyGR|Za;WN3`vs(g`X`nf2y^i$^YZd=2^%zLC5eg4sL6h1D{&?rq?{6Nz*_``md*jEGb02I;cyV<3{SEE=_wWCIuKMpG zzt`)e9&YXXwoUur^~L|^>VH3^@TNuN|CP!AkGnnHH|PJkntvyi{~y!2KTYw|r%&(S zzkl=Q&Cj1d@7%fb?Af!&k01Z~_3Qcb=l{Wgfe4`ZlZBCi!I(h@q!#2S2DXg{W)^tp zNcEq1V)!(RH)`D#L9yzU5lquwi8c!+woJ|OnYNZAF40FO!@*;M+W{HjWpSGhv~K#K zqaj|bAEc*cBqPMiYNW&}Bx9tdXRNDZ#K*2GX~ZDO&S#{fYs}1K#3q$$B*kXL#5`ph zr>ru=9C<~~g^OE_IHdX2=kQB&Oq^V9Bq+?IpvJ%>ENIl6mBb|`sv#=IRpOkGv??tl aJ~TWsI@a6QKhW!gyTr#YZlB#98LR>RMX%QY literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_open_no_siblings.gif b/Music_List/WebRoot/xmlhttp/css/rime/css-images/tree_nav_top_open_no_siblings.gif new file mode 100644 index 0000000000000000000000000000000000000000..0e8b610ee0e1a537f7a208e39fd08ef95de9ed28 GIT binary patch literal 401 zcmZ?wbhEHb6krfzxN5}kf1bhj*AM^w`*-Wst?SpX|Gzxx?;*b*ZyrBCvh?TWMQ^vu zT$@>@*4|6|DUV=cyjLj4egJ2PJMQ8 z!RvKW|F2B`KUe?zA%*|PbiQrVzCTUz>ApGtt}p&~Qu$4b$p3RS|Bt(U`t<4j`}c3& zy!rX_=bbxuo;`c^`0?XkzkWS`{`@}}Fc1e6f3h$#Fc>lDfRuy$#K5-BVP=7cj#U4N zCxTa#1S52>d}J+N8rBqginUrWo;ftfr*9=&oT876LyC)}%K;wYMKK#0o=uWa)sraJ z3)0mzG img{ + /*width: 10px;*/ + /*height:16px;*/ +} + + +.iceTreeRow a img { +/* vertical-align: top; - Bug in FF, when img has focus it is not highlighted with a box.*/ + background-repeat: repeat-y; + border: 0; + padding: 0; +} + +.iceTreeRow * div { + padding: 0; + vertical-align: middle; +} + +/* ------------ Menu Classes -- +*/ + +.iceMnuBar, .iceMnuBarVrt { + padding: 0; + margin: 0; + white-space: nowrap; + background-image: none; + background-color: #FCFCFC; +} + +.iceMnuBarItem, .iceMnuBarVrtItem { + border: 1px solid #DBDBDB; + float: left; + white-space: nowrap; + background-color: #FCFCFC; +} + +.iceMnuBarItem a, .iceMnuBarItem span, .iceMnuBarItem a:hover, .iceMnuBarVrtItem a, .iceMnuBarVrtItem span, .iceMnuBarVrtItem a:hover { + text-decoration: none; + font-weight: bold; + display: block; + font-size: 1.0em; + color: #000000; +} + +.iceMnuBarItem a, .iceMnuBarItem span, .iceMnuBarItem a:hover { + padding: 3px 6px 3px 6px; +} + +.iceMnuBarVrtItem a, .iceMnuBarVrtItem span, .iceMnuBarVrtItem a:hover { + padding: 3px 0 3px 6px; +} + +.iceMnuBarItem a, .iceMnuBarVrtItem a { + background-image: url(css-images/bottom_menu_bg.png); +} + +.iceMnuBarItem a:hover, .iceMnuBarVrtItem a:hover { + background-image: url(css-images/bottom_menu_btn_bg_on.png); +} + +.iceMnuItmSep { + border-bottom: 1px solid #DBDBDB; +} + +.iceMnuItmSep hr { + width: 100%; + border: 1px inset #000000; +} + +.iceMnuBarSubMenu, .iceMnuBarVrtSubMenu { + position: absolute; + background-color: #FCFCFC; + display: block; + width: 145px; + border-right: 1px solid #DBDBDB; + border-left: 1px solid #DBDBDB; + border-top: 1px solid #DBDBDB; + z-index: 1000; +} + +.iceMnuItm { + padding: 0; + margin: 0; + vertical-align: top; + border-bottom: 1px solid #DBDBDB; +} + +.iceMnuItm a, .iceMnuItm a:hover, .iceMnuItmVrt a, .iceMnuItmVrt a:hover { + border: 0; + padding: 0; + margin: 0; + display: block; + text-decoration: none; + text-align: left; + vertical-align: top; + line-height: 25px; + height: 25px; + width: 100%; +} + +.iceMnuItm a, .iceMnuItmVrt a { + background-color: #FCFCFC; + color: #000000; +} + +.iceMnuItm a:hover, .iceMnuItmVrt a:hover { + background-color: #4591A1; + color: #FFFFFF; +} + +.iceMnuItm a:hover .iceMnuItmLabel { + color: #FFFFFF; +} + +.iceMnuItmLabel { + padding-top: 0; + padding-bottom: 0; + padding-left: 7px; + font-weight: normal; +} + +.iceMnuItmLabel, .iceMnuBarItemLabel { + font-size: 1.0em; + width: 100%; + vertical-align: top; +} + +.iceMnuItmImage, .iceMnuBarItemImage, .iceMnuBarVrtItemImage { + display: inline; +} + +.iceMnuItmImage, .iceMnuItmLabel { + vertical-align: middle; +} + +.iceMnuBarSubMenuInd { + float: right; + padding: 5px 0 0 0; + margin: 0; +} + +.iceMnuBarVrt { + width: 160px; + display: block; +} + +.iceMnuBarVrtSubMenuInd { + display: inline; + float: right; + padding-top: 3px; + padding-right: 1px; +} + +/* +----------- PanelPopup ---------- +*/ + +.iceMnuPopVrtItemLabel { + vertical-align: middle; +} + +.iceMnuPopVrtItemImage { + width: 19px; + vertical-align: middle; +} + +.iceMnuPopVrt { +/* was iceMenu_vertical */ + float: left; + white-space: nowrap; + + margin: 0px; + padding: 0px; + border: 0px; + width: 0px; + height: 0px; +} + +.iceMnuPopVrtTopSubMenu { + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border: 1px solid #999999; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtItem { +/* was iceMenu_verticalItem */ + width: 160px; + display: block; +} + +.iceMnuPopVrtItem a { +/* was iceMenu_verticalItem */ +/* background-color: #DDDDDD;*/ + height: auto; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; + font-size: 1.1em; + margin-bottom: 1px; + float: none; + display: block; + text-decoration: none; + border: 0px solid #FFFFFF; /*width: 100%;*/ +} + +.iceMnuPopVrtItem a:hover { +/* was iceMenu_verticalItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuPopVrtSubMenu { +/* was iceSubMenu_vertical*/ + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border-top: 1px solid #999999; + border-right: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtSubMenuInd { +/* was iceSubMenuDividerVert */ + display: inline; + float: right; + padding-top: 0px; + padding-right: 1px; +} + +/* +----------- PanelPopup & panelTooltip ---------- +*/ + +.icePnlPop, .icePnlTlTip { + padding: 0px; + z-index: 1000; + background: #F5F5F5; + border: 1px solid #d9d9d9; + color: #666666; +} + +.icePnlPopHdr, .icePnlTlTipHdr { + height: 2.0em; + font-weight: bold; + background: #FFF url(css-images/PnlHdr_bgslice.gif) repeat-x top left; + border-bottom: 1px solid #d9d9d9; +} + +.icePnlPopHdr .iceOutTxt, .icePnlTlTipHdr .iceOutTxt { + padding: 4px; + text-align: center; + vertical-align: middle; + font: 11px tahoma; + color: #484848; + font-weight: bold; +} + +.icePnlPopBody, .icePnlTlTipBody { + padding: 10px; +} + +.icePnlPopFtr, .icePnlTlTipFtr { + float: right; + height: auto; + background-color: #DDDDDD; +} + +.popupTopTextDrag, .popupTopTextModal { + margin: 2px 0 0 4px; + display: inline; + float: left; +} + +.popupTopClose, .popupTopCloseModal { + vertical-align: middle; + margin: 4px; + display: inline; + float: right; +} + +.popupContentText { + display: block; +} + +/* + Classes for the output progress bar +*/ + +.iceOutProgIndetActv { + margin: 1px; + height: 17px; + background: url(css-images/ProgFill_Indet_Bg_active.gif) repeat-x top left; +} + +.iceOutProgIndetInactv { + margin: 1px; + height: 17px; + background: url(css-images/ProgFill_Indet_Bg_inactive.gif) repeat-x top left; +} + +/* + Classes for the connection status indicator +*/ + +.iceOutConStatInactv, .iceOutConStatActv, .iceOutConStatCaution, .iceOutConStatDisconnect { + height: 33px; + width: 33px; + position: absolute; + margin-left: -10px; +} + +.iceOutConStat { + margin: 0px; + width: 25px; + height: 25px; + border: none; + font-size: .5em; +} + +.iceOutConStatInactv { + background: url(css-images/connect_idle.gif) no-repeat center top; +} + +.iceOutConStatActv { + background: url(css-images/connect_active.gif) no-repeat center top; +} + +.iceOutConStatCaution { + background: url(css-images/connect_caution.gif) no-repeat center top; +} + +.iceOutConStatDisconnect { + background: url(css-images/connect_disconnected.gif) no-repeat center top; +} + +/* XP Disabled styles CSS Document v1.0 mar 31 2006 */ + +.iceCmdBtn-dis { +} + +.iceCmdLnk-dis, .iceOutLnk-dis { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +.iceOutTxt-dis, .iceOutLbl-dis { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +.iceInpTxt-dis, .iceInpSecrt-dis { + color: #ABABAB; + cursor: default; + margin: 2px; + padding: 3px; + font: 11px tahoma; + border: 1px dotted #CCCCCC; +} + +.iceInpTxtArea-dis { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #ABABAB; + border: 1px dotted #CCCCCC; + cursor: default; + margin: 2px; + padding: 2px; +} + +.iceSelMnyCb-dis { + background-color: #CCCCCC; + padding: 2px; + margin: 2px; + cursor: default; + color: #CCCCCC; + border: none; +} + +.iceSelOneMnu-dis, .iceSelMnyLb-dis, .iceSelMnyMnu-dis, .iceSelOneLb-dis { + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + padding: 2px; + font-size: .95em; + cursor: default; + border: none; +} + +.iceSelOneRb-dis { + background-color: #CCCCCC; + padding: 2px; + margin: 2px; + cursor: default; + color: #444444; + border: none; +} + +.iceInpFileTxt-dis { + border: none; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + cursor: default; +} + +.iceInpFileBtn-dis { + border: 1px solid #CCCCCC; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + cursor: default; +} + +/* submenu disabled style classes */ +.iceSubMenuRowLabel-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; +} + +.iceSubMenuRow-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; + padding: 0px; + display: block; + height: auto; +} + +.iceSubMenuRow-dis a { + color: #333333; + text-decoration: none; + cursor: default; + display: block; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + +} + +.iceSubMenuRow-dis a:hover { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +/* panel tabs disabled style classes */ + +.icePnlTbOff { +/* was iceTabSetTabOff*/ + +} + +.icePnlTbOff .LftTop-dis { + background-color: transparent; + background-image: url(css-images/off-left-top-dis.gif); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOff .MidTop-dis { + background-color: #DEDEDE; + background-image: url(css-images/off-mid-top-dis.gif); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .RtTop-dis { + background-color: transparent; + background-image: url(css-images/off-right-top-dis.gif); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOff .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; + +} + +.icePnlTbOff .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .LftBtm-dis { + background-color: transparent; + background-image: url(css-images/off-left-bot.gif); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOff .MidBtm-dis { + background-color: transparent; + background-image: url(css-images/off-mid-bot.gif); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOff .RtBtm-dis { + background-color: transparent; + background-image: url(css-images/off-right-bot.gif); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab off */ +.icePnlTbOffBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOffBtm .MidBtm-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOffBtm .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; + +} + +.icePnlTbOffBtm .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOffBtm .MidTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOffBtm .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab on */ + +.icePnlTbOnBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOnBtm .MidBtm-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOnBtm .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; +} + +.icePnlTbOnBtm .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOnBtm .MidTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOnBtm .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tab on disabled */ +.icePnlTbOn { + +} + +.icePnlTbOn .LftTop-dis { + background-color: transparent; + background-image: url(css-images/off-left-top-dis.gif); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOn .MidTop-dis { + background-color: #DEDEDE; + background-image: url(css-images/off-mid-top-dis.gif); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .RtTop-dis { + background-color: transparent; + background-image: url(css-images/off-right-top-dis.gif); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOn .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; +} + +.icePnlTbOn .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .LftBtm-dis { + background-color: transparent; + background-image: url(css-images/off-left-bot.gif); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOn .MidBtm-dis { + background-color: transparent; + background-image: url(css-images/off-mid-bot.gif); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOn .RtBtm-dis { + background-color: transparent; + background-image: url(css-images/off-right-bot.gif); + background-repeat: no-repeat; + border: none; +} + +/* +data scroller classes disabled styles +*/ +.sclBtnCell-dis { +/* the cells behind the scroll buttons */ + background-color: #FFFFFF; + padding: 2px; +} + +.sclBtnCell-dis img { + cursor: default; +} + +.icePaginatorTbl-dis { +/* the container for the pagination*/ + background-color: #FFFFFF; +} + +/* set the common attributes for the pagination numbers */ +.icePaginatorAtvCol-dis a, .icePaginatorCol-dis a { + text-decoration: none; + font-weight: normal; + background-color: #FFFFFF; + color: #ABABAB; + display: block; + padding-left: 5px; + padding-right: 5px; + border: 1px solid #FFFFFF; + cursor: default; +} + +/* override the attributes for the currently selected page */ +.icePaginatorAtvCol-dis a { + color: #ABABAB; + /* border:1px solid #2A6CC2; + background-color:#2A6CC2; + */ + cursor: default; +} + +/* set the attributes for the mouseover on none-current pages */ +.icePaginatorCol-dis a:hover { + /* color:#000000; + border:1px solid #2A6CC2;*/ +} + +/* +Disabled classes for the calendar controls +*/ + +.iceSelInpDate-dis { +/* calendar outline & background color */ + background-color: #FFFFFF; + border: 1px solid #DEDEDE; /* removed margin from calendar outline - better absolute positioning of popup */ +/*margin:10px;*/ +} + +.iceSelInpDateMonthYear-dis { + background-color: #EFEFEF; + /* background-image: url("./css-images/table_col_header.gif"); + background-position:bottom; + background-repeat:repeat-x;*/ + font-weight: normal; + text-align: center; + color: #999999; + padding-left: 1px; + padding-right: 1px; + padding-top: 4px; + padding-bottom: 4px; /*border-right:1px solid #CCCCCC;*/ +} + +.iceSelInpDateMoYrDropdown-dis { + background-color: #EFEFEF; + color: #999999; +} + +.iceSelInpDateMonthYear-dis img { + cursor: default; +} + +.iceSelInpDateWeek-dis { +/* the days of the week row */ + font-weight: normal; + color: #999999; + background-color: #EFEFEF; + text-align: center; + padding-left: 5px; + padding-right: 5px; + border-bottom: 1px solid #ABABAB; +} + +/* set the look for the days of the week backgrounds */ +.iceSelInpDateDay-dis, .iceSelInpDateCur-dis { +/* the background & alignment for the days */ + padding: 3px; + text-align: center; +} + +/* now set the attributes for the numbers for each day of the week */ +.iceSelInpDateDay-dis a { +/* the day text */ + text-decoration: none; + background-color: #FFFFFF; + border: 1px solid #FFFFFF; + color: #ABABAB; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +.iceSelInpDateCur-dis a { + text-decoration: none; + background-color: #ABABAB; + border: 1px solid #ABABAB; + color: #FFFFFF; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +/* +----------- commandSortHeader ---------- +*/ +.iceCmdSrtHdr { + text-decoration: none; /*border: 1px solid #ABABAB;*/ + color: #333333; + /*width: 100%;*/ + height: 100%; + padding: 0px; + display: block; +} + +.iceCmdSrtHdr-dis { + text-decoration: none; /*border: 1px solid #ABABAB;*/ + color: #999999; + /*width: 100%;*/ + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +/* IE specific CSS to enlarge clickable area of SortHeader links */ +* html .iceCmdSrtHdr { + height: 1%; +} + +/* +----------- form ---------- +*/ +.iceFrm { + +} + +/* +----------- graphicImage ---------- +*/ +.iceGphImg { + +} + +/* +----------- message ---------- +*/ +.iceMsg { + +} + +.iceMsgFatal { + +} + +.iceMsgError { + +} + +.iceMsgWarn { + +} + +.iceMsgInfo { + +} + +/* +----------- messages ---------- +*/ +.iceMsgs { + +} + +.iceMsgsFatal { + +} + +.iceMsgsError { + +} + +.iceMsgsWarn { + +} + +.iceMsgsInfo { + +} + +/* +----------- panelGrid ---------- +*/ +.icePnlGrd { + +} + +.icePnlGrdHdr { + +} + +.icePnlGrdFtr { + +} + +.icePnlGrdRow1 { + +} + +.icePnlGrdRow2 { + +} + +.icePnlGrdCol1 { + +} + +.icePnlGrdCol2 { + +} + +/* +----------- panelGroup ---------- +*/ +.icePnlGrp { + +} + +/* +----------- outputFormat ---------- +*/ +.iceOutFrmt { + +} + +/* +----------- tree ---------- +*/ +.iceTree { + +} + +.iceTreeRow { + +} + +/* +----------- panelSeries ---------- +*/ +.icePnlSrs { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlPos { + +} + +.icePnlPos-dis { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlStk { +} + +.icePnlStkRow { +} + +.icePnlStkCol { +} + +/* +----------- panelTab header ---------- +*/ +.icePnlTbSetHdrIconLft { + display: none; + width: 0; + height: 0; + +} + +.icePnlTbSetHdrIconRt { + display: none; + width: 0; + height: 0; +} + +.icePnlTbSetHdrLbl { + padding-top: 2px; + padding-bottom: 2px; + white-space: nowrap; +} + +/* +----------- Table Row Selection -------- +*/ +.iceRowSelSelected, .iceRowSelSelected td { + background: #E5E5E5; +} +.iceRowSelSelected .iceOutTxt{ + color: #578E93; +} +.iceRowSelSelected .iceOutTxt { + color: #428F99; +} +.iceRowSelSelectedMouseOver { + background: #FFA326; +} +.iceRowSelSelectedMouseOver .iceOutTxt { + color: white; +} +.iceRowSelMouseOver { + color: white; + background: #4591A1; +} +.iceRowSelMouseOver .iceOutTxt { + color: white; +} + +.portlet-section-body-hover .iceRowSelSelectedMouseOver { + background-color: #FFA326; +} + +.portlet-section-alternate-hover td, .portlet-section-body-hover td { + background-color: #4591A1; + } +/* +----------- outputChart -------- +*/ + +.iceOutChrt { + +} + +/* +----------- Panel Collapsible -------- +*/ + +.icePnlClpsbl, .icePnlClpsbl-dis { + border: 1px solid #d9d9d9; +} + +.icePnlClpsblCnt .icePnlClpsbl { + border: none; +} + +.icePnlClpsblHdr, .icePnlClpsblHdr-dis { + font: 11px tahoma; + color: #484848; + padding: 6px 0 0 8px; + font-weight: bold; + height: 20px; + background: #FFF url( './css-images/table_col_header.gif' ) repeat-x top left; + border-bottom: 1px solid #d9d9d9; +} + +.icePnlClpsblHdr-dis { + background: #FFF url( './css-images/table_col_header_dis.gif' ) repeat-x top left; +} + +.icePnlClpsblHdr .iceCmdLnk, .icePnlClpsblColpsdHdr .iceCmdLnk { + padding-left: 22px; +} + +.icePnlClpsblHdr .icePnlGrp a, .icePnlClpsblHdr-dis .icePnlGrp a { + font-weight: bold; +} + +.icePnlClpsblCnt, .icePnlClpsblCnt-dis { + font: 11px / 17px tahoma; + color: #494949; + background: #f5f5f5; + padding: 4px 4px 4px 9px; + border-bottom: none; +} + +.icePnlClpsblCnt-dis { + background-color: #e5e5e5; +} + +.icePnlClpsblCnt .icePnlClpsblHdr { + font: 11px tahoma; + color: #484848; + padding: 0 0 0 0; + font-weight: bold; + height: 20px; + border: none; + margin-top: 8px; +} + +.icePnlClpsblCnt .icePnlClpsblHdr .iceOutTxt { + background: none; +} + +.icePnlClpsblCnt .icePnlClpsblColpsdHdr { + font: 11px tahoma; + color: #484848; + padding: 0 0 0 0; + font-weight: bold; + height: 20px; + border: none; + margin-top: 8px; +} + +.icePnlClpsblCnt .icePnlClpsblColpsdHdr .iceOutTxt{ + background: none; +} + +.icePnlClpsblCnt .icePnlClpsblCnt { + border-left: none; + border-right: none; + padding: 0 0 0 10px; +} + +.icePnlClpsblColpsd, .icePnlClpsblColpsd-dis { + border: 1px solid #d9d9d9; +} + +.icePnlClpsblCnt .icePnlClpsblColpsd { + border: none; +} + +.icePnlClpsblColpsdHdr, .icePnlClpsblColpsdHdr-dis { + font: 11px tahoma; + color: #484848; + padding: 6px 0 0 8px; + font-weight: bold; + height: 20px; + background: #FFF url( './css-images/table_col_header.gif' ) repeat-x top left; + border-bottom: none; +} + +.icePnlClpsblColpsdHdr-dis { + background: #FFF url( './css-images/table_col_header_dis.gif' ) repeat-x top left; +} + +.icePnlClpsblColpsdHdr .iceOutTxt, .icePnlClpsblHdr .iceOutTxt, +.icePnlClpsblColpsdHdr-dis .iceOutTxt, .icePnlClpsblHdr-dis .iceOutTxt { + padding-left: 22px; +} + +.icePnlClpsblColpsdCnt, .icePnlClpsblColpsdCnt-dis { + border: none; +} + +.icePnlClpsblHdr, .icePnlClpsblColpsdHdr { + cursor: pointer; +} + +.icePnlClpsblHdr-dis, .icePnlClpsblColpsdHdr-dis { + cursor: default; +} + +.icePnlClpsblHdr div, .icePnlClpsblHdr-dis div, .icePnlClpsblColpsdHdr div, .icePnlClpsblColpsdHdr-dis div { + background-repeat: no-repeat; + background-position: left top; + height: 18px; +} + +.icePnlClpsblHdr div { + background: url( './css-images/PnlHdr_down.gif' ) no-repeat top left; + padding: 2px 0 0 5px; + margin: -2px 0 0 -3px; +} + +.icePnlClpsblHdr-dis div { + background: url( './css-images/PnlHdr_down_dis.gif' ) no-repeat top left; + padding: 2px 0 0 5px; + margin: -2px 0 0 -3px; +} + +.icePnlClpsblColpsdHdr div { + background: url( './css-images/PnlHdr_collapsed.gif' ) no-repeat top left; + padding: 2px 0 0 5px; + margin: -2px 0 0 -3px; +} + +.icePnlClpsblColpsdHdr-dis div { + background: url( './css-images/PnlHdr_collapsed_dis.gif' ) no-repeat top left; + padding: 2px 0 0 5px; + margin: -2px 0 0 -3px; +} + +.icePnlClpsbl-dis, .icePnlClpsblHdr-dis, .icePnlClpsblCnt-dis, +.icePnlClpsblColpsd-dis, .icePnlClpsblColpsdHdr-dis, .icePnlClpsblColpsdCnt-dis{ + color: #999; +} + +.icePnlClpsblHdr-dis .iceOutTxt, .icePnlClpsblCnt-dis .iceOutTxt, +.icePnlClpsblColpsdHdr-dis .iceOutTxt, .icePnlClpsblColpsdCnt-dis .iceOutTxt { + color: #999; +} + +/* +----------- Google Maps -------- +*/ + +.iceGmp{ + border-collapse:collapse; + border-spacing:0px; + padding:0px; +} + +.iceGmpMapTd { + vertical-align: top; +} + +.iceGmpMapTd div.gmap { + width: 600px; + height: 400px; +} + +.iceInpRchTxt { + width: 100%; +} + +/* panel divider */ +.icePnlDvr, .icePnlDvrHor { + width: 800px; + height: 400px; +} + +.icePnlDvrCnt, .icePnlDvrHorCnt { + border: 1px solid #ABABAB; + /*width: 100%;*/ + height: 100%; +} + +.icePnlDvrFst, .icePnlDvrSnd { + height: 100%; + display: block; + float: left; + overflow: auto; +} + +.icePnlDvrSpt { + width: 2px; + height: 100%; + display: inline; + background-color: #EFEFEF; + border-left: 1px solid #ABABAB; + border-right: 1px solid #ABABAB; + float: left; + cursor: e-resize; +} + +.icePnlDvrHorFst, .icePnlDvrHorSnd { + width: 100%; + display: block; + overflow: auto; + display: block; +} + +.icePnlDvrHorSpt { + width: 100%; + height: 2px; + background-color: #EFEFEF; + border-top: 1px solid #ABABAB; + border-bottom: 1px solid #ABABAB; + cursor: n-resize; +} + +.iceSelMnyCb input, .iceSelOneRb input, .iceSelBoolChkbx { + margin: 0 5px 2px 2px; + padding: 2px; + vertical-align: middle; +} + +/* +----------- PanelConfirmation ---------- +*/ + +.icePnlCnf { + background-color: #F5F5F5; + border: 1px solid #d9d9d9; + width: 300px; + padding: 0; + z-index: 1000; + color: #666666; + font-family: Arial, Helvetica, sans-serif; +} + +.icePnlCnfHdr { + background: #FFF url( './css-images/PnlHdr_bgslice.gif' ) repeat-x top left; + border-bottom: 1px solid #d9d9d9; + height: 2.0em; + padding: 4px; + text-align: left; + vertical-align: middle; + font: 11px tahoma; + color: #484848; + font-weight: bold; +} + +.icePnlCnfBody { + padding: 10px 10px 5px 10px; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns { + padding: 5px 10px 10px 10px; + text-align: center; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns input { + margin: 0 20px 0 20px; +} diff --git a/Music_List/WebRoot/xmlhttp/css/rime/rime.css b/Music_List/WebRoot/xmlhttp/css/rime/rime.css new file mode 100644 index 0000000..32ed10d --- /dev/null +++ b/Music_List/WebRoot/xmlhttp/css/rime/rime.css @@ -0,0 +1,3069 @@ +/* + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * "The contents of this file are subject to the Mozilla Public License + * Version 1.1 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + * License for the specific language governing rights and limitations under + * the License. + * + * The Original Code is ICEfaces 1.5 open source software code, released + * November 5, 2006. The Initial Developer of the Original Code is ICEsoft + * Technologies Canada, Corp. Portions created by ICEsoft are Copyright (C) + * 2004-2006 ICEsoft Technologies Canada, Corp. All Rights Reserved. + * + * Contributor(s): _____________________. + * + * Alternatively, the contents of this file may be used under the terms of + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL" + * License), in which case the provisions of the LGPL License are + * applicable instead of those above. If you wish to allow use of your + * version of this file only under the terms of the LGPL License and not to + * allow others to use your version of this file under the MPL, indicate + * your decision by deleting the provisions above and replace them with + * the notice and other provisions required by the LGPL License. If you do + * not delete the provisions above, a recipient may use your version of + * this file under either the MPL or the LGPL License." + * + */ + +/* Basic CSS styles This stylesheet is intended to match the style of the default Windows XP UI */ +/* Default CSS styles. These styles override the basic HTML tags on the page */ +/* Version received from KF Apr 01 2006 v1.2 */ + +/* +=================== Font Family, Size and Color ============== +*/ + +/* set the attributes for the font family, size and color for ALL elements on the page */ +/* make the fonts inside tables and forms == the default size of the page */ +body, table { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #000000; +} + +/* now set the size and other attributes of the fonts for any of the form elements for non-ICE form elements. (note this will also affect any ICE components that render out any of the following HTML tags */ +input, textarea, select { +} + +/* +=================== HTML Form Element Appearence ============== +*/ + +/* set the style elements for any of the textarea form elements */ +textarea { + +} + +/* set the style elements for any of the select form elements */ +select { + +} + +/* set the style elements for any of the input form elements */ +input { + +} + +fieldset { + border: 0px none; +} + +/* +=================== Style class definitions for ICE Standard Extended Component Appearance ============== +*/ +.iceInpTxt, .iceInpSecrt, .iceInpTxtArea { + margin: 2px; + padding: 3px; + font: 11px tahoma; + background: #FFF; + border: 1px solid #d9d9d9; +} + +.iceSelMnyCb { + white-space: nowrap; +} + +.iceSelMnyCb input, .iceSelOneRb input, .iceSelBoolChkbx { + margin: 2px; + padding: 2px; +} + +.iceSelOneRb table tr td { + padding: 1px; +} + + +.iceSelOneMnu, .iceSelMnyLb, .iceSelMnyMnu, .iceSelOneLb { + margin: 2px; + padding: 3px; + font: 11px tahoma; + background: #FFF; + border: 1px solid #d9d9d9; +} + +.iceInpTxtArea { + margin: 2px; + padding: 3px; + font: 11px tahoma; + background: #FFF; + border: 1px solid #d9d9d9; +} + +.iceCmdLnk, .iceOutLnk { + text-decoration: none; + font-weight: normal; + color: #333333; +} + +.iceOutTxt, .iceOutLbl { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding-left: 0px; + padding-right: 0px; + padding-top: 2px; + padding-bottom: 2px; +} + +.iceOutLbl { + font-weight: bold; + color: #484848; +} + +.iceCmdBtn { + font-family: Arial, Helvetica, sans-serif; +} + +/* +=================== ICE Component Appearence ============== +*/ +/* +----------- Calendar Component classes +*/ +.iceSelInpDate { +/* calendar outline & background color */ + background-color: #FFFFFF; + border-top: 1px solid #d9d9d9; + border-left: 1px solid #d9d9d9; + /*margin-top: 10px;*/ +} +table.iceSelInpDate tbody tr td table{ + border-right: 1px solid #d9d9d9; +} + +.iceSelInpDateIFrameFix, .iceIEIFrameFix { + z-index: -1; + position: absolute; + display: block; + filter: mask(); +} + +.iceIEIFrameFix { + height: 0; +} + +.iceSelInpDatePopup { + min-width: 172px; +} + +.iceSelInpDateInput { + width: 150px; + margin: 2px; +} + +.iceSelInpDateOpenPopup { + display: inline; + text-decoration: none; + background-color: transparent; + background-image: url( "./css-images/cal_button.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 16px; + height: 16px; + margin-left: 5px; +} + +.iceSelInpDateClosePopup { + display: inline; + text-decoration: none; + background-color: transparent; + background-image: url( "./css-images/cal_off.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 16px; + height: 16px; + margin-left: 5px; +} + +.iceSelInpDateMonthYear, .iceSelInpDateTime{ + background: #F5F5F5; + font-weight: bold; + text-align: center; + color: #666; + padding-left: 1px; + padding-right: 1px; + padding-top: 4px; + padding-bottom: 4px; + +} + +.iceSelInpDateTime{ + border-left: 1px solid #d9d9d9; + border-bottom: 1px solid #d9d9d9; + border-right: 1px solid #d9d9d9; +} + +.iceSelInpDateMoYrDropdown, .iceSelInpDateTimeDropDown { + background: #F5F5F5; + font-weight: bold; + color: #666; +} + +.iceSelInpDateMonthYear img { + border: none; + margin-left: 3px; + padding: 3px; +} + +.iceSelInpDateMovePrev { + text-decoration: none; + display: inline; + background-color: transparent; + background-image: url( "./css-images/cal_arrow_left.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 17px; + height: 16px; +} + +.iceSelInpDateMoveNext { + text-decoration: none; + display: inline; + background-color: transparent; + background-image: url( "./css-images/cal_arrow_right.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 17px; + height: 16px; +} + +.iceSelInpDateWeek { +/* the days of the week row */ + font-weight: normal; + color: #666; + text-align: center; + padding: 3px; + border-top: 1px solid #d9d9d9; + border-right: 1px solid #d9d9d9; + border-bottom: 1px solid #d9d9d9; + /*width: 22px;*/ +} + +/* set the look for the days of the week backgrounds */ + +.iceSelInpDateDay { + text-align: center; + border-right: 1px solid #d9d9d9; + border-bottom: 1px solid #d9d9d9; + padding: 3px; +} + +.iceSelInpDateCur { + background: #faa620; + text-align: center; + border-right: 1px solid #d9d9d9; + border-bottom: 1px solid #d9d9d9; +} + +.iceSelInpDateCur .iceCmdLnk { + background: none; + border: none; +} + +.iceSelInpDateCur .iceOutTxt { + color: #FFFFFF; +} + +.weekend { + background: #e9e9e9; +} + +.weekend .iceOutTxt { + color: #666; +} + +.weekend .iceCmdLnk { + background: none; + border: none; +} + +/* now set the attributes for the numbers for each day of the week */ + +.iceSelInpDateDay a { +/* the day text */ + text-decoration: none; + background-color: #FFFFFF; + /*border: 1px solid #FFFFFF;*/ + color: #000000; + width: 100%; + height: 100%; + padding: 0px; + display: block; +} + +.iceSelInpDateCur a { + text-decoration: none; + background-color: #2A6CC2; + border: 1px solid #2A6CC2; + color: #FFFFFF; + width: 100%; + height: 100%; + padding: 0px; + display: block; +} + +/* now set the color attributes for the hover effect on non-current days */ +.iceSelInpDateDay a:hover { +/* the day text */ + text-decoration: none; + color: #666; +} + +.exampleBoxCol1 { + padding: 7px; +} + +/* +----------- Output Table Component classes +*/ + +/* +.firstChildTitle .icePnlGrd { + margin-top: 10px; + border: 1px solid #d9d9d9; + border-collapse: collapse; +} + +.firstChildTitle .icePnlGrdRow1 { + background: #f1f1f1; + border-left: 1px solid #d9d9d9; +} + +.firstChildTitle .icePnlGrdRow2 { + background: #FFF; + border-left: 1px solid #d9d9d9; +} + +.firstChildTitle .icePnlGrdCol1 { + font-weight: bold; + padding: 7px; + border-right: 1px solid #CCCCCC; + border-bottom: 1px solid #CCCCCC; + text-align: left; +} + +.firstChildTitle .icePnlGrdCol2 { + padding: 7px; + border-right: 1px solid #CCCCCC; + border-bottom: 1px solid #CCCCCC; + text-align: left; + +} +*/ + +/* +----------- Data Table Component classes +*/ +.iceDatTbl { +/* was iceDataTblOutline */ + background-color: #FFFFFF; + border-collapse: collapse; + border: none; + border-left: 1px solid #d9d9d9; + margin: 10px 0 0 0; +} + +.iceDatTbl table { + border-collapse: collapse; +} + +.iceDatTblColHdr, .iceDatTblColHdr1, .iceDatTblColHdr2, .iceDatTblColGrpHdrCol, .iceDatTblFtr { +/* was iceTblHeader */ + text-align: center; + font: 11px tahoma; + color: #484848; + padding: 5px; + font-weight: bold; + background: #FFF url( './css-images/table_col_header.gif' ) repeat-x bottom left; + border: 1px solid #d9d9d9; +} + +.iceDatTblResHdlr { + margin:0px;; + padding:0px; + border-width: 0px; + width:2px; + background-color:transparent; + +} + +.iceDatTblResBor { + margin:0px;; + padding:0px; + background-color: #d9d9d9; + background-position: bottom; + background-repeat: repeat-x; + width:2px; + border-top: 1px solid #CCCCCC; +} + +.iceDatTblBlkTd { + border-bottom: 1px solid #CCCCCC; + background-color: #d9d9d9; +} +/* data tables are rendered with alternating row colors */ + +.iceDatTblRow1 { +/* was iceTblRow1 */ + background: #FFF; + border-left: 1px solid #d9d9d9; +} + +.iceDatTblRow2 { +/* was iceTblRow2 */ + background: #F7F7F7; + border-left: 1px solid #d9d9d9; +} + +/* set the common attributes for the column classes */ +.iceDatTblCol, .iceDatTblCol1, .iceDatTblCol2 { +/*was column, column1, column2, column3*/ + color: #000000; + padding-left: 5px; + padding-right: 5px; + padding-top: 3px; + padding-bottom: 3px; + border-right: 1px solid #CCCCCC; + border-bottom: 1px solid #CCCCCC; + text-align: left; +} + +.iceDatTblHdr { +} + +/*was iceTblHeader */ +.iceDatTblFtr { + background: none; + border-top: 1px solid #d9d9d9; +} + +.iceDatTblScrlSpr{ + background: url( './css-images/table_col_header.gif' ) repeat-x bottom left; + border-top: 1px solid #d9d9d9; + border-right: 1px solid #d9d9d9; +} + +.iceDatTblScrlSprFtr{ + border-bottom: 1px solid #d9d9d9; + border-right: 1px solid #d9d9d9; +} + +.iceDatTblScrlSprFtr .iceDatTblFtr{ + border-bottom: none; +} + +.iceDatTblScrlSpr .iceDatTblColHdr1, .iceDatTblScrlSpr .iceDatTblColHdr2 { + border-left-style: none; + border-top-style: none; +} + +.iceDatTblActvSrtHdr{} +/*was iceTblFooter */ + +/* +----- for datatable when cell content length exceeds----- +*/ + +.iceDatTbl td span.iceOutTxt { + overflow: hidden; + display: block; + padding: 2px 0px; +} + +/* etc */ + +/* +----------- Data Scroller Component classes +*/ +.iceDatPgrScrOut { +/* the class for the outside table */ + background-color: transparent; + margin: 10px; +} + +.iceDatPgrScrBtn { +/* the cells behind the scroll buttons */ + background-color: transparent; + padding: 2px; +} + +.iceDatPgrScrBtn .iceCmdLnk-dis { + border-bottom:none; +} + +.iceDatPgrTbl { +/* the container for the pagination*/ + background-color: transparent; +} + +/* set the common attributes for the pagination numbers */ +.iceDatPgrScrCol a, .iceDatPgrCol a { + text-decoration: none; + font-weight: normal; + background-color: #FFFFFF; + color: #656565; + display: block; + padding-left: 5px; + padding-right: 5px; + padding-top: 2px; + padding-bottom: 2px; + border: 1px solid #DBDBDB; +} + +/** html .iceDatPgrCol a {*/ + /*width: 1%;*/ +/*}*/ + +/* override the attributes for the currently selected page */ +.iceDatPgrScrCol a { + color: #FFFFFF; + border: 1px solid #DBDBDB; + background-color: #FFA600; +} + +/** html .iceDatPgrScrCol a {*/ + /*width: 1%;*/ +/*}*/ + +/* set the attributes for the mouseover on none-current pages */ +.iceDatPgrCol a:hover { + color: #000000; + border: 1px solid #FFA600; + text-decoration: none; + padding-bottom: 1px; +} +.iceDatPgrScrCol a:hover { + color: #000000; + border: 1px solid #DBDBDB; + text-decoration: none; + padding-bottom: 1px; +} + +/* +----------- commandSortHeader classes +*/ +.iceCmdSrtHdrAsc, .iceCmdSrtHdrDesc{ + background-repeat: no-repeat; + background-position: center; + width:10px; + height:10px; +} +.iceCmdSrtHdrAsc{ + background-image: url('./css-images/column_sort_asc.gif'); +} +.iceCmdSrtHdrDesc{ + background-image: url('./css-images/column_sort_desc.gif'); +} + +/* +----------- Tabbed Pane Component classes +*/ + +/* tabOn style classes */ + +.icePnlTbOn { + margin-right: 0; +} + +.icePnlTbOn .MidMid td { + font-weight: bold; + white-space: nowrap; + text-align: center; +} + +.icePnlTbOn .LftTop { + background: url( './css-images/Tab_LftTop.gif' ) no-repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOn .MidTop { + background: url( './css-images/Tab_MidTop.gif' ) repeat-x top left; + border: none; + padding: 0; + text-align: center; + height: 4px; +} + +.icePnlTbOn .RtTop { + background: url( './css-images/Tab_RtTop.gif' ) no-repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOn .LftMid { + background: url( './css-images/Tab_LftMid.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOn .MidMid { + background: url( './css-images/Tab_MidMid.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; +} + +.icePnlTbOn .MidMid a { + background: url( './css-images/Tab_MidMid_bullet.gif' ) no-repeat top left; + border: none; + padding: 4px 8px 5px 28px; + margin: 3px; + text-decoration: none; + font-weight: bold; + color: #666; + cursor: pointer; + display: block; +} + +.icePnlTbOn .RtMid { + background: url( './css-images/Tab_RtMid.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOn .LftBtm { + background: #f7f7f7; + + padding: 0; + text-align: center; + height: 1px; +} + +.icePnlTbOn .MidBtm { + background: #f7f7f7; + border: none; + padding: 0; + text-align: center; + height: 1px; +} + +.icePnlTbOn .RtBtm { + background: #f7f7f7; + + padding: 0; + text-align: center; + height: 1px; +} + +* html .icePnlTbOn .MidMid a { + width: 1%; +} + +/* tabOff style classes */ + +.icePnlTbOff { + margin-right: 0; +} + +.icePnlTbOff .MidMid td { + text-align: center; + white-space: nowrap; + font-weight: bold; +} + +.icePnlTbOff .LftTop { + background: url( './css-images/Tab_LftTop_off.gif' ) no-repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOff .MidTop { + background: url( './css-images/Tab_MidTop_off.gif' ) repeat-x top left; + border: none; + padding: 0; + text-align: center; + height: 4px; +} + +.icePnlTbOff .RtTop { + background: url( './css-images/Tab_RtTop_off.gif' ) no-repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOff .LftMid { + background: url( './css-images/Tab_LftMid_off.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOff .MidMid { + background: url( './css-images/Tab_MidMid_off.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; +} + +.icePnlTbOff .MidMid a { + background: url( './css-images/Tab_MidMid_bullet_off.gif' ) no-repeat top left; + border: none; + padding: 4px 8px 5px 28px; + margin: 3px; + font-weight: bold; + text-decoration: none; + color: #666; + cursor: pointer; + display: block; +} + +.icePnlTbOff .MidMid a:hover { + font-weight: bold; +} +.icePnlTbOff .MidMid td:hover{ + color: #3581A5; +} + +.icePnlTbOff .RtMid { + background: url( './css-images/Tab_RtMid_off.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOff .LftBtm { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 1px; +} + +.icePnlTbOff .MidBtm { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + height: 1px; +} + +.icePnlTbOff .RtBtm { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 1px; +} + +* html .icePnlTbOff .MidMid a { + width: 1%; +} + +/* tabOver style classes */ + +.icePnlTbOver { +/* was iceTabSetTabOver */ + +} + +.icePnlTbOver .MidMid td { + text-align: center; + white-space: nowrap; + font-weight: bold; +} + +.icePnlTbOver .LftTop { + background: url( './css-images/Tab_LftTop_off.gif' ) no-repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOver .MidTop { + background: url( './css-images/Tab_MidTop_off.gif' ) repeat-x top left; + border: none; + padding: 0; + text-align: center; + height: 4px; +} + +.icePnlTbOver .RtTop { + background: url( './css-images/Tab_RtTop_off.gif' ) no-repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOver .LftMid { + background: url( './css-images/Tab_LftMid_off.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOver .MidMid { + background: url( './css-images/Tab_MidMid_off.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; +} + +.icePnlTbOver .MidMid a { + background: url( './css-images/Tab_MidMid_bullet_over.gif' ) no-repeat top left; + border: none; + padding: 4px 8px 5px 28px; + margin: 3px; + font-weight: bold; + text-decoration: none; + color: #666; + cursor: pointer; + display: block; +} + +.icePnlTbOver .MidMid a:hover { + font-weight: bold; + color: #3581A5; +} + +.icePnlTbOver .RtMid { + background: url( './css-images/Tab_RtMid_off.gif' ) repeat top left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOver .LftBtm { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 1px; +} + +.icePnlTbOver .MidBtm { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + height: 1px; +} + +.icePnlTbOver .RtBtm { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 1px; +} + +* html .icePnlTbOver .MidMid a { + width: 1%; +} + +/* tabSpacer */ + +.icePnlTbSetSpcr { + width: 100%; + border-bottom: 1px solid #d9d9d9; +} + +/* tabPanel */ +.icePnlTbSet { +/* was iceTabSet*/ + width: 100%; +} + +.icePnlTbSetCnt { +/*newly added class*/ + background: #FFF url( './css-images/contentContainer_bg.gif' ) repeat-x top left; + border-bottom: 1px solid #d9d9d9; + border-left: 1px solid #d9d9d9; + border-right: 1px solid #d9d9d9; + padding: 20px; +} + +.icePnlTbSetCntBtm { +/*was iceTabSetBottom*/ + background: url( './css-images/contentContainer_bg_up.gif' ) repeat-x top left; + border-top: 1px solid #d9d9d9; + border-left: 1px solid #d9d9d9; + border-right: 1px solid #d9d9d9; + padding: 20px; +} + +/* TABS ON BOTTOM STYLE CLASSES */ +/* tabOn style classes */ + +.icePnlTbOnBtm { + margin-right: 0; +} + +.icePnlTbOnBtm .MidMid td { + font-weight: bold; + text-align: center; + white-space: nowrap; +} + +.icePnlTbOnBtm .LftTop { + background: #f7f7f7; + padding: 0; + text-align: center; + height: 1px; + +} + +.icePnlTbOnBtm .MidTop { + background: #f7f7f7; + border: none; + padding: 0; + text-align: center; + height: 1px; +} + +.icePnlTbOnBtm .RtTop { + background: #f7f7f7; + padding: 0; + text-align: center; + height: 1px; +} + +.icePnlTbOnBtm .LftMid { + background: url( './css-images/Tab_Btm_LftMid.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOnBtm .MidMid { + background: url( './css-images/Tab_Btm_MidMid.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; +} + +.icePnlTbOnBtm .MidMid a { + background: url( './css-images/Tab_MidMid_bullet.gif' ) no-repeat top left; + border: none; + padding: 3px 8px 2px 28px; + margin: 3px; + font-weight: bold; + text-decoration: none; + color: #666; + cursor: pointer; + display: block; +} + +.icePnlTbOnBtm .RtMid { + background: url( './css-images/Tab_Btm_RtMid.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOnBtm .LftBtm { + background: url( './css-images/Tab_Btm_LftBtm.gif' ) no-repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOnBtm .MidBtm { + background: url( './css-images/Tab_Btm_MidBtm.gif' ) repeat-x bottom left; + border: none; + padding: 0; + text-align: center; + height: 4px; +} + +.icePnlTbOnBtm .RtBtm { + background: url( './css-images/Tab_Btm_RtBtm.gif' ) no-repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +* html .icePnlTbOnBtm .MidMid a { + width: 1%; +} + +/* tabOff style classes */ + +.icePnlTbOffBtm { + margin-right: 0; +} + +.icePnlTbOffBtm .MidMid td { + text-align: center; + white-space: nowrap; + font-weight: bold; +} + +.icePnlTbOffBtm .LftTop { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 1px; +} + +.icePnlTbOffBtm .MidTop { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + height: 1px; +} + +.icePnlTbOffBtm .RtTop { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 1px; +} + +.icePnlTbOffBtm .LftMid { + background: url( './css-images/Tab_Btm_LftMid_off.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOffBtm .MidMid { + background: url( './css-images/Tab_Btm_MidMid_off.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; +} + +.icePnlTbOffBtm .MidMid a { + background: url( './css-images/Tab_MidMid_bullet_off.gif' ) no-repeat top left; + border: none; + padding: 3px 8px 2px 28px; + margin: 3px; + font-weight: bold; + text-decoration: none; + color: #666; + cursor: pointer; + display: block; +} + +.icePnlTbOffBtm .MidMid a:hover { + font-weight: bold; +} + +.icePnlTbOffBtm .RtMid { + background: url( './css-images/Tab_Btm_RtMid_off.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOffBtm .LftBtm { + background: url( './css-images/Tab_Btm_LftBtm_off.gif' ) no-repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOffBtm .MidBtm { + background: url( './css-images/Tab_Btm_MidBtm_off.gif' ) repeat-x bottom left; + border: none; + padding: 0; + text-align: center; + height: 4px; +} + +.icePnlTbOffBtm .RtBtm { + background: url( './css-images/Tab_Btm_RtBtm_off.gif' ) no-repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +* html .icePnlTbOffBtm .MidMid a { + width: 1%; +} + +/* tabOver style classes */ + +.icePnlTbOverBtm { +/* was iceTabSetTabOverBottom*/ + +} + +.icePnlTbOverBtm .MidMid td { + text-align: center; + white-space: nowrap; + font-weight: bold; +} + +.icePnlTbOverfBtm .LftTop { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 1px; +} + +.icePnlTbOverBtm .MidTop { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + height: 1px; +} + +.icePnlTbOverBtm .RtTop { + background: #d9d9d9; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 1px; +} + +.icePnlTbOverBtm .LftMid { + background: url( './css-images/Tab_Btm_LftMid_off.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOverBtm .MidMid { + background: url( './css-images/Tab_Btm_MidMid_off.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; +} + +.icePnlTbOverBtm .MidMid a { + background: url( './css-images/Tab_MidMid_bullet_over.gif' ) no-repeat top left; + border: none; + padding: 3px 8px 2px 28px; + margin: 3px; + font-weight: bold; + text-decoration: none; + color: #666; + cursor: pointer; + display: block; +} + +.icePnlTbOverBtm .MidMid a:hover { + font-weight: bold; +} + +.icePnlTbOverBtm .RtMid { + background: url( './css-images/Tab_Btm_RtMid_off.gif' ) repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; +} + +.icePnlTbOverBtm .LftBtm { + background: url( './css-images/Tab_Btm_LftBtm_off.gif' ) no-repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +.icePnlTbOverBtm .MidBtm { + background: url( './css-images/Tab_Btm_MidBtm_off.gif' ) repeat-x bottom left; + border: none; + padding: 0; + text-align: center; + height: 4px; +} + +.icePnlTbOverBtm .RtBtm { + background: url( './css-images/Tab_Btm_RtBtm_off.gif' ) no-repeat bottom left; + border: none; + padding: 0; + text-align: center; + width: 4px; + height: 4px; +} + +* html .icePnlTbOverBtm .MidMid a { + +} + +/* tabSpacer */ +.icePnlTbSetSpcrBtm { + width: 100%; + border-top: 1px solid #d9d9d9; +} + +/* tabPanel */ + +.icePnlTbSetBtm { + padding-top: 10px; + padding-left: 10px; + padding-right: 10px; + padding-bottom: 10px; + border-right: 1px solid #ABABAB; + border-top: 1px solid #ABABAB; + border-left: 1px solid #ABABAB; + background-color: #FFFFFF; +} + + +/* +------------- BorderLayout +*/ +.icePnlBrdrNorth { + padding: 5px; + background: #FFF; + font-weight: bold; + height: 60px; + text-align: center; +} + +.icePnlBrdrEast { + width: 10%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.icePnlBrdrWest { + width: 20%; + background-color: #FFFFFF; + vertical-align: top; +} + +.icePnlBrdrCenter { + width: 70%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.icePnlBrdrSouth { + border-top: 1px solid #FFFFFF; + color: #666666; + padding: 4px; +} + +/* +------------- PanelLayout +*/ + +.pageHdr { + font-weight: bold; + height: 80px; + background-color: #CDCDCD; + padding: 5px; + text-align: center; +} + +.icePnlBrdrStyle { + background-color: #FFFFFF; + border: 1px solid #ABABAB; + margin: 10px; + width: 97%; +} + +.pageNavigation { + width: 20%; + background-color: #DEDEDE; + padding: 5px; + vertical-align: top; +} + +.pageBody { + width: 80%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.pageFtr { + border-top: 1px solid #ABABAB; + color: #666666; + padding: 4px; +} + +/* +------------ PanelNavigation +*/ + +.navFormOutline { + background-color: #DEDEDE; + margin: 0px; + width: 100%; + padding: 0px; +} + +.navItem, .navActvItem, .navOpenItem { + color: #333333; + text-decoration: none; + background-color: #CDCDCD; + width: 100%; + border: 1px solid #CDCDCD; + border-bottom: 1px solid #FFFFFF; + padding-top: 3px; + padding-bottom: 3px; + padding-left: 5px; + padding-right: 1px; + display: block; +} + +.navItem:hover, .navActvItem:hover, .navOpenItem:hover { + background-color: #FFFFFF; + color: #000000; + border: 1px solid #2A6CC2; +} + +.navOpenItem { + white-space: nowrap; + text-decoration: none; + font-weight: bold; +} + +.navActvItem { + width: 100%; + background-color: #2A6CC2; + color: #FFFFFF; + background-image: url( ./css-images/cal_arrow_right.gif ); + background-position: center right; + background-repeat: no-repeat; +} + +.navSeparator { + width: 100%; + height: 1px; + padding: 0px; + margin: 0px; + background-color: #CDCDCD; + border-bottom: 1px solid #DEDEDE; +} + +/* +--------------- Progress bar +*/ +.iceOutProg { + margin: 0; +} + +.iceOutProgBg { + width: 300px; + height: 17px; + border: 1px solid #d9d9d9; + background: #FFF; +} + +.iceOutProgFill { + display: block; + margin: 1px; + height: 17px; + background: url( './css-images/ProgFill_bg.gif' ) repeat-x top left; +} + +.iceOutProgTxt { + color: #484848; +} + +/* +--------------- autoComplete classes ------ +*/ + +.iceSelInpTxtTxt { + border: 1px solid #ABABAB; + background-color: #FFFFFF; + margin: 10px 0 0 2px; + padding: 2px; +} + +.iceSelInpTxtList { + position: absolute; + display: block; + border-top: 1px solid #ABABAB; + border-right: 1px solid #666666; + border-left: 1px solid #ABABAB; + border-bottom: 1px solid #333333; +} + +.iceSelInpTxtRow { + display: block; + background-color: #FFFFFF; + color: #333333; + padding: 2px; + padding-left: 10px; + border-bottom: 1px solid #DEDEDE; + position: relative; +} + +.iceSelInpTxtSelRow { + display: block; + background-color: #4591A1; + color: #FFFFFF; + padding: 2px; + padding-left: 10px; + border-bottom: 1px solid #FFFFFF; + position: relative; +} + +.iceSelInpTxtSelRow span { + color: #FFFFFF; +} + +/* +--------------- autoComplete disable class ------ +*/ + +.iceSelInpTxtTxt-dis { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #ABABAB; + border: 1px dotted #CCCCCC; + cursor: default; +} + +/* +----------- FileUpload Component classes +*/ +.iceInpFile { + overflow: hidden; +} + +.iceInpFileTxt { + border: 1px solid #ABABAB; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + + color: #000000; +} + +.iceInpFileBtn { + border: 1px solid #ABABAB; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + + color: #000000; +} + +/* +----------- Data Navigation Bar classes +*/ + +.tablebg { + background-color: #EEF3FB; + border: 1px solid #6392C6; + width: 70%; +} + +.oddRow { + background-color: #FFFFFF; +} + +.evenRow { + background-color: #EEF3FB; +} + +.barCol1 { + width: 40%; + text-align: left; +} + +.barCol2 { + width: 15%; + text-align: left; +} + +.barCol3 { + width: 20%; + text-align: left; +} + +.barCol4 { + width: 15%; + text-align: right; +} + +.barCol5 { + width: 15%; + text-align: left; +} + +/* +----------- TreeView component +*/ + +.iceTreeRow { + white-space: nowrap; + vertical-align: middle; + padding: 0; +} + +.iceTreeRow a { + text-decoration: none; + color: #000000; + cursor: pointer; + padding: 0; + /*padding-left: 3px;*/ + vertical-align: middle; +} + +.iceTreeRow a:hover { + text-decoration: underline; +} + +.iceTreeRow img { + border: 0; + vertical-align: middle; + background-repeat: repeat-y; + padding: 0; +} +.iceTreeRow > img{ + /*width: 10px;*/ + /*height:16px;*/ +} + + +.iceTreeRow a img { +/* vertical-align: top; - Bug in FF, when img has focus it is not highlighted with a box.*/ + background-repeat: repeat-y; + border: 0; + padding: 0; +} + +.iceTreeRow * div { + padding: 0; + vertical-align: middle; +} + +/* ------------ Menu Classes -- +*/ + +.iceMnuBar, .iceMnuBarVrt { + padding: 0; + margin: 0; + white-space: nowrap; + background-image: none; + background-color: #FCFCFC; +} + +.iceMnuBarItem, .iceMnuBarVrtItem { + border: 1px solid #DBDBDB; + float: left; + white-space: nowrap; + background-color: #FCFCFC; +} + +.iceMnuBarVrtItem { + float: none; +} + +.iceMnuBarItem a, .iceMnuBarItem span, .iceMnuBarItem a:hover, .iceMnuBarVrtItem a, .iceMnuBarVrtItem span, .iceMnuBarVrtItem a:hover { + text-decoration: none; + font-weight: bold; + display: block; + font-size: 1.0em; + color: #000000; +} + +.iceMnuBarItem a, .iceMnuBarItem span, .iceMnuBarItem a:hover { + padding: 3px 6px 3px 6px; +} + +.iceMnuBarVrtItem a, .iceMnuBarVrtItem span, .iceMnuBarVrtItem a:hover { + padding: 3px 0 3px 6px; +} + +.iceMnuBarItem a, .iceMnuBarVrtItem a { + background-image: url( "./css-images/bottom_menu_bg.png" ); +} + +.iceMnuBarItem a:hover, .iceMnuBarVrtItem a:hover { + background-image: url( "./css-images/bottom_menu_btn_bg_on.png" ); +} + +.iceMnuItmSep { + border-bottom: 1px solid #DBDBDB; +} + +.iceMnuItmSep hr { + width: 100%; + /*border: 1px inset #000000;*/ +} + +.iceMnuBarSubMenu, .iceMnuBarVrtSubMenu { + position: absolute; + background-color: #FCFCFC; + display: block; + width: 145px; + border-right: 1px solid #DBDBDB; + border-left: 1px solid #DBDBDB; + border-top: 1px solid #DBDBDB; + z-index: 1000; +} + +.iceMnuItm { + padding: 0; + margin: 0; + vertical-align: top; + border-bottom: 1px solid #DBDBDB; +} + +.iceMnuItm a, .iceMnuItm a:hover, .iceMnuItmVrt a, .iceMnuItmVrt a:hover { + border: 0; + padding: 0; + margin: 0; + display: block; + text-decoration: none; + text-align: left; + vertical-align: top; + line-height: 25px; + height: 25px; + width: 100%; +} + +.iceMnuItm a, .iceMnuItmVrt a { + background-color: #FCFCFC; + color: #000000; +} + +.iceMnuItm a:hover, .iceMnuItmVrt a:hover { + background-color: #4591A1; + color: #4591A1; +} + +.iceMnuItm a:hover .iceOutTxt, .iceMnuItmVrt a:hover .iceOutTxt { + color: #FFFFFF; +} + +.iceMnuItm a:hover .iceOutTxt, .iceMnuItmVrt a:hover .iceOutTxt, .iceMnuItm a:hover .iceMnuItmLabel { + color: #FFFFFF; +} + +.iceMnuItmLabel { + padding-top: 0; + padding-bottom: 0; + padding-left: 7px; + font-weight: normal; +} + +.iceMnuItmLabel, .iceMnuBarItemLabel { + font-size: 1.0em; + /*width: 100%;*/ + vertical-align: top; +} + +.iceDatTbl td span.iceMnuItmLabel { + display: inline; + padding: 0 0 0 7px; +} + +.iceMnuItmImage, .iceMnuBarItemImage, .iceMnuBarVrtItemImage { + display: inline; +} + +.iceMnuItmImage, .iceMnuItmLabel { + vertical-align: middle; +} + +.iceMnuBarSubMenuInd { + float: right; + padding: 5px 0 0 0; + margin: 0; +} + +.iceMnuBarVrt { + width: 160px; + display: block; +} + +.iceMnuBarVrtSubMenuInd { + display: inline; + float: right; + padding-top: 3px; + padding-right: 1px; +} + +/* +----------- PanelPopup ---------- +*/ + +.iceMnuPopVrtItemLabel { + vertical-align: middle; + color: #333333; +} + +.iceMnuPopVrtItemImage { + width: 19px; + vertical-align: middle; +} + +.iceMnuPopVrt { +/* was iceMenu_vertical */ + float: left; + white-space: nowrap; + margin: 0px; + padding: 0px; + border: 0px; + width: 0px; + height: 0px; +} + +.iceMnuPopVrtTopSubMenu { + padding: 1px; + width: 160px; + background-color: #FCFCFC; + border: 1px solid #999999; + position: absolute; + font-size: 10px; + height: auto; + display: block; +} + +.iceMnuPopVrtItem { +/* was iceMenu_verticalItem */ + width: 160px; + display: block; +} + +.iceMnuPopVrtItem a { +/* was iceMenu_verticalItem */ +/* background-color: #DDDDDD;*/ + height: auto; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; + font-size: 1.1em; + margin-bottom: 1px; + float: none; + display: block; + text-decoration: none; + border: 0px solid #FFFFFF; /*width: 100%;*/ +} + +.iceMnuPopVrtItem a:hover { +/* was iceMenu_verticalItem */ + background-color: #4591A1; + color: #4591A1; + text-decoration: none; +} + +.iceMnuPopVrtItem a:hover .iceMnuPopVrtItemLabel { + color: #FFFFFF; +} + +.iceMnuPopVrtSubMenu { +/* was iceSubMenu_vertical*/ + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border-top: 1px solid #999999; + border-right: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtSubMenuInd { +/* was iceSubMenuDividerVert */ + display: inline; + float: right; + padding-top: 0px; + padding-right: 1px; +} + +/* +----------- PanelPopup & panelTooltip ---------- +*/ + +.icePnlPop, .icePnlTlTip { + padding: 0px; + z-index: 1000; + background: #F5F5F5; + border: 1px solid #d9d9d9; + color: #666666; +} + +.icePnlPopHdr, .icePnlTlTipHdr { + height: 2.0em; + font-weight: bold; + background: #FFF url( './css-images/PnlHdr_bgslice.gif' ) repeat-x top left; + border-bottom: 1px solid #d9d9d9; +} + +.icePnlPopHdr .iceOutTxt, .icePnlTlTipHdr .iceOutTxt { + padding: 4px; + text-align: center; + vertical-align: middle; + font: 11px tahoma; + color: #484848; + font-weight: bold; +} + +.icePnlPopBody, .icePnlTlTipBody { + padding: 10px; +} + +.icePnlPopFtr, .icePnlTlTipFtr { + float: right; + height: auto; + background-color: #DDDDDD; +} + +.popupTopTextDrag, .popupTopTextModal { + margin: 2px 0 0 4px; + display: inline; + float: left; +} + +.popupTopClose, .popupTopCloseModal { + vertical-align: middle; + margin: 4px; + display: inline; + float: right; +} + +.popupContentText { + display: block; +} + +/* + Classes for the output progress bar +*/ + +.iceOutProgIndetActv { + margin: 1px; + height: 17px; + background: url( './css-images/ProgFill_Indet_Bg_active.gif' ) repeat-x top left; +} + +.iceOutProgIndetInactv { + margin: 1px; + height: 17px; + background: url( './css-images/ProgFill_Indet_Bg_inactive.gif' ) repeat-x top left; +} + +/* + Classes for the connection status indicator +*/ + +.iceOutConStatInactv, .iceOutConStatActv, .iceOutConStatCaution, .iceOutConStatDisconnect { + height: 33px; + width: 33px; + position: absolute; + margin-left: -10px; +} + +.iceOutConStat { + margin: 10px; + width: 25px; + height: 25px; + border: none; + font-size: .5em; +} + +.iceOutConStatInactv { + background: url( './css-images/connect_idle.gif' ) no-repeat center top; +} + +.iceOutConStatActv { + background: url( './css-images/connect_active.gif' ) no-repeat center top; +} + +.iceOutConStatCaution { + background: url( './css-images/connect_caution.gif' ) no-repeat center top; +} + +.iceOutConStatDisconnect { + background: url( './css-images/connect_disconnected.gif' ) no-repeat center top; +} + +/* XP Disabled styles CSS Document v1.0 mar 31 2006 */ + +.iceCmdBtn-dis { +} + +.iceCmdLnk-dis, .iceOutLnk-dis { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +.iceOutTxt-dis, .iceOutLbl-dis { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +.iceInpTxt-dis, .iceInpSecrt-dis { + color: #ABABAB; + cursor: default; + margin: 2px; + padding: 3px; + font: 11px tahoma; + border: 1px dotted #CCCCCC; +} + +.iceInpTxtArea-dis { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #ABABAB; + border: 1px dotted #CCCCCC; + cursor: default; + margin: 2px; + padding: 2px; +} + +.iceSelMnyCb-dis { + background-color: #CCCCCC; + padding: 2px; + margin: 2px; + cursor: default; + color: #CCCCCC; + border: none; +} + +.iceSelOneMnu-dis, .iceSelMnyLb-dis, .iceSelMnyMnu-dis, .iceSelOneLb-dis { + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + padding: 2px; + font-size: .95em; + cursor: default; + border: none; +} + +.iceSelOneRb-dis { + background-color: #CCCCCC; + padding: 2px; + margin: 2px; + cursor: default; + color: #444444; + border: none; +} + +.iceInpFileTxt-dis { + border: none; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + cursor: default; +} + +.iceInpFileBtn-dis { + border: 1px solid #CCCCCC; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + cursor: default; +} + +/* submenu disabled style classes */ +.iceSubMenuRowLabel-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; +} + +.iceSubMenuRow-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; + padding: 0px; + display: block; + height: auto; +} + +.iceSubMenuRow-dis a { + color: #333333; + text-decoration: none; + cursor: default; + display: block; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + +} + +.iceSubMenuRow-dis a:hover { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +/* panel tabs disabled style classes */ +.icePnlTbOff { +/* was iceTabSetTabOff*/ + +} + +.icePnlTbOff .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOff .MidTop-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOff .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; + +} + +.icePnlTbOff .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOff .MidBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOff .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab off */ +.icePnlTbOffBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOffBtm .MidBtm-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOffBtm .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; + +} + +.icePnlTbOffBtm .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOffBtm .MidTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOffBtm .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab on */ + +.icePnlTbOnBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOnBtm .MidBtm-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOnBtm .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; +} + +.icePnlTbOnBtm .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOnBtm .MidTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOnBtm .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tab on disabled */ +.icePnlTbOn { + +} + +.icePnlTbOn .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOn .MidTop-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOn .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; +} + +.icePnlTbOn .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOn .MidBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOn .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* +data scroller classes disabled styles +*/ +.sclBtnCell-dis { +/* the cells behind the scroll buttons */ + background-color: #FFFFFF; + padding: 2px; +} + +.sclBtnCell-dis img { + cursor: default; +} + +.icePaginatorTbl-dis { +/* the container for the pagination*/ + background-color: #FFFFFF; +} + +/* set the common attributes for the pagination numbers */ +.icePaginatorAtvCol-dis a, .icePaginatorCol-dis a { + text-decoration: none; + font-weight: normal; + background-color: #FFFFFF; + color: #ABABAB; + display: block; + padding-left: 5px; + padding-right: 5px; + border: 1px solid #FFFFFF; + cursor: default; +} + +/* override the attributes for the currently selected page */ +.icePaginatorAtvCol-dis a { + color: #ABABAB; + /* border:1px solid #2A6CC2; + background-color:#2A6CC2; + */ + cursor: default; +} + +/* set the attributes for the mouseover on none-current pages */ +.icePaginatorCol-dis a:hover { + /* color:#000000; + border:1px solid #2A6CC2;*/ +} + +/* +Disabled classes for the calendar controls +*/ + +.iceSelInpDate-dis { +/* calendar outline & background color */ + background-color: #FFFFFF; + border: 1px solid #DEDEDE; /* removed margin from calendar outline - better absolute positioning of popup */ +/*margin:10px;*/ +} + +.iceSelInpDateMonthYear-dis { + background-color: #EFEFEF; + /* background-image: url("./css-images/table_col_header.gif"); + background-position:bottom; + background-repeat:repeat-x;*/ + font-weight: normal; + text-align: center; + color: #999999; + padding-left: 1px; + padding-right: 1px; + padding-top: 4px; + padding-bottom: 4px; /*border-right:1px solid #CCCCCC;*/ +} + +.iceSelInpDateMoYrDropdown-dis { + background-color: #EFEFEF; + color: #999999; +} + +.iceSelInpDateMonthYear-dis img { + cursor: default; +} + +.iceSelInpDateWeek-dis { +/* the days of the week row */ + font-weight: normal; + color: #999999; + background-color: #EFEFEF; + text-align: center; + padding-left: 5px; + padding-right: 5px; + border-bottom: 1px solid #ABABAB; +} + +/* set the look for the days of the week backgrounds */ +.iceSelInpDateDay-dis, .iceSelInpDateCur-dis { +/* the background & alignment for the days */ + padding: 3px; + text-align: center; +} + +/* now set the attributes for the numbers for each day of the week */ +.iceSelInpDateDay-dis a { +/* the day text */ + text-decoration: none; + background-color: #FFFFFF; + border: 1px solid #FFFFFF; + color: #ABABAB; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +.iceSelInpDateCur-dis a { + text-decoration: none; + background-color: #ABABAB; + border: 1px solid #ABABAB; + color: #FFFFFF; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +/* +----------- commandSortHeader ---------- +*/ +.iceCmdSrtHdr { + text-decoration: none; /*border: 1px solid #ABABAB;*/ + color: #333333; + width: 100%; + height: 100%; + padding: 0px; + display: block; +} + +.iceCmdSrtHdr-dis { + text-decoration: none; /*border: 1px solid #ABABAB;*/ + color: #999999; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +/* IE specific CSS to enlarge clickable area of SortHeader links */ +* html .iceCmdSrtHdr { + height: 1%; +} + +/* +----------- form ---------- +*/ +.iceFrm { + +} + +/* +----------- graphicImage ---------- +*/ +.iceGphImg { + +} + +/* +----------- message ---------- +*/ +.iceMsg { + +} + +.iceMsgFatal { + +} + +.iceMsgError { + +} + +.iceMsgWarn { + +} + +.iceMsgInfo { + +} + +/* +----------- messages ---------- +*/ +.iceMsgs { + +} + +.iceMsgsFatal { + +} + +.iceMsgsError { + +} + +.iceMsgsWarn { + +} + +.iceMsgsInfo { + +} + +/* +----------- panelGrid ---------- +*/ +.icePnlGrd { + +} + +.icePnlGrdHdr { + +} + +.icePnlGrdFtr { + +} + +.icePnlGrdRow1 { + +} + +.icePnlGrdRow2 { + +} + +.icePnlGrdCol1 { + +} + +.icePnlGrdCol2 { + +} + +/* +----------- panelGroup ---------- +*/ +.icePnlGrp { + +} + +/* +----------- outputFormat ---------- +*/ +.iceOutFrmt { + +} + +/* +----------- tree ---------- +*/ +.iceTree { + +} + +.iceTreeRow { + +} + +/* +----------- panelSeries ---------- +*/ +.icePnlSrs { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlPos { + +} + +.icePnlPos-dis { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlStk { +} + +.icePnlStkRow { +} + +.icePnlStkCol { +} + +/* +----------- panelTab header ---------- +*/ +.icePnlTbSetHdrIconLft { + display: none; + width: 0; + height: 0; + +} + +.icePnlTbSetHdrIconRt { + display: none; + width: 0; + height: 0; +} + +.icePnlTbSetHdrLbl { + padding-top: 2px; + padding-bottom: 2px; + white-space: nowrap; +} + +/* +----------- Table Row Selection -------- +*/ +.iceRowSelSelected { + background: #E5E5E5; +} +.iceRowSelSelected .iceOutTxt{ + color: #578E93; +} +.iceRowSelSelected .iceOutTxt { + color: #428F99; +} +.iceRowSelSelectedMouseOver { + background: #FFA326; +} +.iceRowSelSelectedMouseOver .iceOutTxt { + color: white; +} +.iceRowSelMouseOver { + color: white; + background: #4591A1; +} +.iceRowSelMouseOver .iceOutTxt { + color: white; +} + +/* +----------- outputChart -------- +*/ + +.iceOutChrt { + +} + +/* +----------- Panel Collapsible -------- +*/ + +.icePnlClpsbl, .icePnlClpsbl-dis { + border: 1px solid #d9d9d9; +} + +.icePnlClpsblCnt .icePnlClpsbl { + border: none; +} + +.icePnlClpsblHdr, .icePnlClpsblHdr-dis { + font: 11px tahoma; + color: #484848; + padding: 6px 0 0 8px; + font-weight: bold; + height: 20px; + background: #FFF url( './css-images/table_col_header.gif' ) repeat-x top left; + border-bottom: 1px solid #d9d9d9; +} + +.icePnlClpsblHdr-dis { + background: #FFF url( './css-images/table_col_header_dis.gif' ) repeat-x top left; +} + +.icePnlClpsblHdr .iceCmdLnk, .icePnlClpsblColpsdHdr .iceCmdLnk { + padding-left: 22px; +} + +.icePnlClpsblHdr .icePnlGrp a, .icePnlClpsblHdr-dis .icePnlGrp a { + font-weight: bold; +} + +.icePnlClpsblCnt, .icePnlClpsblCnt-dis { + font: 11px / 17px tahoma; + color: #494949; + background: #f5f5f5; + padding: 4px 4px 4px 9px; + border-bottom: none; +} + +.icePnlClpsblCnt-dis { + background-color: #e5e5e5; +} + +.icePnlClpsblCnt .icePnlClpsblHdr { + font: 11px tahoma; + color: #484848; + padding: 0 0 0 0; + font-weight: bold; + height: 20px; + border: none; + margin-top: 8px; +} + +.icePnlClpsblCnt .icePnlClpsblHdr .iceOutTxt { + background: none; +} + +.icePnlClpsblCnt .icePnlClpsblColpsdHdr { + font: 11px tahoma; + color: #484848; + padding: 0 0 0 0; + font-weight: bold; + height: 20px; + border: none; + margin-top: 8px; +} + +.icePnlClpsblCnt .icePnlClpsblColpsdHdr .iceOutTxt{ + background: none; +} + +.icePnlClpsblCnt .icePnlClpsblCnt { + border-left: none; + border-right: none; + padding: 0 0 0 10px; +} + +.icePnlClpsblColpsd, .icePnlClpsblColpsd-dis { + border: 1px solid #d9d9d9; +} + +.icePnlClpsblCnt .icePnlClpsblColpsd { + border: none; +} + +.icePnlClpsblColpsdHdr, .icePnlClpsblColpsdHdr-dis { + font: 11px tahoma; + color: #484848; + padding: 6px 0 0 8px; + font-weight: bold; + height: 20px; + background: #FFF url( './css-images/table_col_header.gif' ) repeat-x top left; + border-bottom: none; +} + +.icePnlClpsblColpsdHdr-dis { + background: #FFF url( './css-images/table_col_header_dis.gif' ) repeat-x top left; +} + +.icePnlClpsblColpsdHdr .iceOutTxt, .icePnlClpsblHdr .iceOutTxt, +.icePnlClpsblColpsdHdr-dis .iceOutTxt, .icePnlClpsblHdr-dis .iceOutTxt { + padding-left: 22px; +} + +.icePnlClpsblColpsdCnt, .icePnlClpsblColpsdCnt-dis { + border: none; +} + +.icePnlClpsblHdr, .icePnlClpsblColpsdHdr { + cursor: pointer; +} + +.icePnlClpsblHdr-dis, .icePnlClpsblColpsdHdr-dis { + cursor: default; +} + +.icePnlClpsblHdr div, .icePnlClpsblHdr-dis div, .icePnlClpsblColpsdHdr div, .icePnlClpsblColpsdHdr-dis div { + background-repeat: no-repeat; + background-position: left top; + height: 18px; +} + +.icePnlClpsblHdr div { + background: url( './css-images/PnlHdr_down.gif' ) no-repeat top left; + padding: 2px 0 0 5px; + margin: -2px 0 0 -3px; +} + +.icePnlClpsblHdr-dis div { + background: url( './css-images/PnlHdr_down_dis.gif' ) no-repeat top left; + padding: 2px 0 0 5px; + margin: -2px 0 0 -3px; +} + +.icePnlClpsblColpsdHdr div { + background: url( './css-images/PnlHdr_collapsed.gif' ) no-repeat top left; + padding: 2px 0 0 5px; + margin: -2px 0 0 -3px; +} + +.icePnlClpsblColpsdHdr-dis div { + background: url( './css-images/PnlHdr_collapsed_dis.gif' ) no-repeat top left; + padding: 2px 0 0 5px; + margin: -2px 0 0 -3px; +} + +.icePnlClpsbl-dis, .icePnlClpsblHdr-dis, .icePnlClpsblCnt-dis, +.icePnlClpsblColpsd-dis, .icePnlClpsblColpsdHdr-dis, .icePnlClpsblColpsdCnt-dis{ + color: #999; +} + +.icePnlClpsblHdr-dis .iceOutTxt, .icePnlClpsblCnt-dis .iceOutTxt, +.icePnlClpsblColpsdHdr-dis .iceOutTxt, .icePnlClpsblColpsdCnt-dis .iceOutTxt { + color: #999; +} + +/* +----------- Google Maps -------- +*/ + +.iceGmp{ + border-collapse:collapse; + border-spacing:0px; + padding:0px; +} + +.iceGmpMapTd { + vertical-align: top; +} + +.iceGmpMapTd div.gmap { + width: 600px; + height: 400px; +} + +.iceInpRchTxt { + width: 100%; +} + +/* panel divider */ +.icePnlDvr, .icePnlDvrHor { + width: 800px; + height: 400px; +} + +.icePnlDvrCnt, .icePnlDvrHorCnt { + border: 1px solid #ABABAB; + /*width: 100%;*/ + height: 100%; +} + +.icePnlDvrFst, .icePnlDvrSnd { + height: 100%; + display: block; + float: left; + overflow: auto; +} + +.icePnlDvrSpt { + width: 2px; + height: 100%; + display: inline; + background-color: #EFEFEF; + border-left: 1px solid #ABABAB; + border-right: 1px solid #ABABAB; + float: left; + cursor: e-resize; +} + +.icePnlDvrHorFst, .icePnlDvrHorSnd { + width: 100%; + display: block; + overflow: auto; + display: block; +} + +.icePnlDvrHorSpt { + width: 100%; + height: 2px; + background-color: #EFEFEF; + border-top: 1px solid #ABABAB; + border-bottom: 1px solid #ABABAB; + cursor: n-resize; +} + +.iceSelMnyCb input, .iceSelOneRb input, .iceSelBoolChkbx { + margin: 0 5px 2px 2px; + padding: 2px; + vertical-align: middle; +} + +/* +----------- PanelConfirmation ---------- +*/ + +.icePnlCnf { + background-color: #F5F5F5; + border: 1px solid #d9d9d9; + width: 300px; + padding: 0; + z-index: 1000; + color: #666666; + font-family: Arial, Helvetica, sans-serif; +} + +.icePnlCnfHdr { + background: #FFF url( './css-images/PnlHdr_bgslice.gif' ) repeat-x top left; + border-bottom: 1px solid #d9d9d9; + height: 2.0em; + padding: 4px; + text-align: left; + vertical-align: middle; + font: 11px tahoma; + color: #484848; + font-weight: bold; +} + +.icePnlCnfBody { + padding: 10px 10px 5px 10px; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns { + padding: 5px 10px 10px 10px; + text-align: center; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns input { + margin: 0 20px 0 20px; +} diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/add.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..03ce08b5123c4195fa38b2075b216aeb9e8f50f0 GIT binary patch literal 134 zcmZ?wbhEHbVhI zD_5>uyLRpF-MhDL-Foog!JRvIva_?VUcLJ4*|VolpWeH7@6n@2moHy_@!~~JPEJ-< z*6Y`=&z?Q|{Q2_>7cRVg`}XC_m*>x)fAZwX#ful;y?gin|9^&2Fd71bCIl3JvM@3* zs50n)Tm;G!3>*~<-W)O>8x|aFWDwGdIk91(1A~f^*Bp;RrG|D9#i%tNkCHfh1x39? zW(qDo+M*m7Wl|}ma&m%B^fHzWjL+P=G^Nf1kz5sH3Y&G%v1`US*f#G40L4%^A#04AuY{ZII;v literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-ff.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-ff.gif new file mode 100644 index 0000000000000000000000000000000000000000..6d40f3fdd7620ed8490114e8c1525d3cdfe95cea GIT binary patch literal 254 zcmZ?wbhEHb6lV}%IKss6@#{a&s(0tko!fcl$Ld4h`}_N?3*LHpd9kyzKYsnk!^7kK z`}fbDJ!@S2dHVF}Ha0fO%F4O9xyP^l(oKDR^}+A{wO{}L|1Tf?3P>_w1ByRc7#SFt z7<53AAUhpcs~0Flq-4%pY7rKG+i!}iZ#ct=l59t@*Z&SY@DtNv;^m&Fnvf%;v09#| zd?wS3bqm*v&JJatAelPMO<3f&~3cIa+tVvizN>flv ns38MeM|4k!S;&N1UuQAi=?(_0>{@(+iKCs$Y2cscN}2? literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-first-dis.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-first-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..4833c02a6e2ba03a5e5801537ef6f5f95e92450a GIT binary patch literal 137 zcmZ?wbhEHb6lV}%Si}GV|NsAg_wL=>w{Ks+e*N<0%LNM-07VpkvM@3*urug@RDjen zF#A>Py0cI1l;>(ArPpV-?~D;CyWd!uuGXrsYV8`yc?EM;Mdao;YrI&0O`BDjC&Y>I nVEbVK4v(3qlWq8>c{(m!TvO$3uJ``d?vQiO+pFd>FjxZsHZwck literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-first.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-first.gif new file mode 100644 index 0000000000000000000000000000000000000000..cb09b2b3894123f37537d7fcb57194c37e0ee21d GIT binary patch literal 252 zcmZ?wbhEHb6lV}%I3mvAS@rJY*MI%}{i_dsw=Q_=<>mF}&6~cyzU9l8+t}E=fB(L^ zx_aWoi5?yv?Ck8isjrolm9IYdotv9`{MxVnwO{}L|1Tf?3P>{G0E$0Z7#SGE8FWDM zAUhpcD<71Grew}rW)Y?19Xf@TCG^Xd9M-iJ@3-#~eCVDcD6;$10uLD%fj!r>)fV3@ zIOvssYu42bySo<}Y0f_XqU*p$iK`kPcGSpqhPX_XzWjZL$Ra(1*sz2Kv6#5<)+mdZ iP}3?)&uW**t|?;tf=u;FJVFZ=E?UgX$u6$QU=0AEd}Ff! literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-fr.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-fr.gif new file mode 100644 index 0000000000000000000000000000000000000000..82e314672e55cc624031720e35bb0f7c467681c9 GIT binary patch literal 271 zcmV+q0r37uNk%w1VHW@p0K^>tNqX+__5OjQ^Q*%5P*6~Ndwb8%&&SsKxy<-=eH zX-Y~;J8YbkFE7tSy@+v@Bjb* zA6x4G|Nj6000000A^8LW0012TEC2ui02crd06+zdVApMAX`ZIIVO)DzTL5tHW?gN* zQEQ%Sz#Kp`)A16%q%v1A@B+A{lrykQdbt6q(yDBeJ8bTP!3bQ41IsviKu~a!fzVJ{ zD!{y6U$$5xBMwtj7Y7SsEm|8~9A1k)VQU-$Bx@2RXJ9;%G%zxqHc>5+gHt;r2n?k@ V6#)baA{_-8w6(Uk83iIC06P!rbgKXW literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-last-dis.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-last-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..87aaca6bc01b6cda96faa5a576e10d068de1e998 GIT binary patch literal 917 zcmZ?wbhEHb6lV}%_|CwvXwjm_j~{1bWITNM@Y1DA4<0*vp(=j7x(dGh4lyLV^Lo_+c9<-L3N-oAbN|Nno6Q7{?;gDC_Qf3h$#FsLx- zfE)$N6ATThV&lQ|qf0!y e-R?L{U3IxjaG_M{tuKj(*T?gB$w~__SOWm%Esqxf literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-last.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-last.gif new file mode 100644 index 0000000000000000000000000000000000000000..7a250df19eababffc31aa3267c85b0f1ca03fec3 GIT binary patch literal 263 zcmZ?wbhEHb6lV}%I3mvAS@rJY*MI%}{i_dsw=Q_=<>mF}&6~cyzU9l8+t}E=fB(L^ zx_aWoi5?yv?Ck8isjrolm9IYdotv9`{MxVnwO{}L|1Tf?iUBuJ{K>+|z#z_`15yIA z(}A_+L1}18=DcMVQ8~X|LLDMPT(^d?uB~{#eb>b|?pp*zcAr|{A>$&jM@%80(({T}x^?UB-MbGSJb3!_>76@wE?v6x;>C-rSFdJgXJ5X2`Ps8)uV25uckkZw=g-fd zKmX{_qpYl~moH!D+~G-W)O>8y+|?a0qL~Xb2qWXctg+V!05o$hlKlW7>`%28wRIGS*64 zA}&5U(W&aowBv%|Q~vtwN+|A4@ibe}x^}fm?BpX+p^G;)EMj=$)xBw+fHJ3mOY_1BMus=q zI=vg7uf7|`#HDJn+LViRa%Q1OtN`=csNRZ&5~mibetP4&eDD3Kp?hM!+Ugm^NHi2y Zni?>*Gx@S>@ba;XPMJDYV1gopH2{jmV_E-p{=rI w2cxRXR5km&8qVMp?@7YR_wGa-T;w~&Hu4lpfZ~b^bGavLnVi^?;J{!F09jjmga7~l literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-previous.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-previous.gif new file mode 100644 index 0000000000000000000000000000000000000000..01013b754767dd3794b4770778aa28cfd9d504be GIT binary patch literal 234 zcmZ?wbhEHb6l4%!IKsjk1Oyb%{Iq`kde5qN3JMDE z-@i}o`*{EU{epsm$FKkN_xGPae}4Y_`T6~vsFPblt9@ibe}x^{+v+?%Y>Ua4dTSJ5{*pSDLQE)XzmGWTK#>{ewH zKX^91TTn;Lq5oQhj*ps0V2PqZNrs7HfurpN$J0w*ws>tXk=fGqe0!W>NI|fPIAc@+ UgEyN7uMnH)#7UF*dKDS00agoL{{R30 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-rw-dis.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrow-rw-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..43195e7a4318d2e7ab163ba944ff8c43327e79d4 GIT binary patch literal 131 zcmZ?wbhEHb6lV}%Si}GV|NsAg_wL=BH*a3Qe*N<0%LNM-07VpkvM@3*urug@RDjen zFnd(&y0cI1l;>(ArPpV-@0{CEd8fQ5Zi%Pdj72%s`&LKoa?!c^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<W=16jCP7AKLB{__7~~lk7+Ha?1vwZB7@3$^SlQS)IJvli z3bqO`FflSSGqEtUva+xMRo4RL8CV2ag%k}P*@OcV*_8@Kj2b5{ECr+Na zbot8FYu9hwy!G(W<0ns_J%91?)yGetzkL1n{m0K=Ab&A3Fhjfr_ZgbM1cClyVqsxs zVF&q(k*OSrnFU!`6%E;h90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3pmLCuwqfN*_DNBt7Xfk5wKN?e7n$ hX9&HKnDI_8MI|YmXUDey%ReiY&DyrY*Y5fMn*bYE<+1<( literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrowDesc.jpg b/Music_List/WebRoot/xmlhttp/css/royale/css-images/arrowDesc.jpg new file mode 100644 index 0000000000000000000000000000000000000000..afe3326249d1f858a202083bba539f176a0b6979 GIT binary patch literal 675 zcmex=^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<ECr+Na zbot8FYu9hwy!G(W<0ns_J%91?)yGetzkL1n{m0K=Ab&A3Fhjfr_ZgbM1cClyVqsxs zVF&q(k*OSrnFU!`6%E;h90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA36(Wur_xIdViL?szIU7#@$?Q?jVR{{Kw?4j|&w literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_arrow_left.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_arrow_left.gif new file mode 100644 index 0000000000000000000000000000000000000000..01013b754767dd3794b4770778aa28cfd9d504be GIT binary patch literal 234 zcmZ?wbhEHb6l4%!IKsjk1Oyb%{Iq`kde5qN3JMDE z-@i}o`*{EU{epsm$FKkN_xGPae}4Y_`T6~vsFPblt9@ibe}x^{+v+?%Y>Ua4dTSJ5{*pSDLQE)XzmGWTK#>{ewH zKX^91TTn;Lq5oQhj*ps0V2PqZNrs7HfurpN$J0w*ws>tXk=fGqe0!W>NI|fPIAc@+ UgEyN7uMnH)#7UF*dKDS00agoL{{R30 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_arrow_right.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_arrow_right.gif new file mode 100644 index 0000000000000000000000000000000000000000..2aabe416faa0f823298bdbd93460009cef058270 GIT binary patch literal 237 zcmZ?wbhEHb6l4%!IKs=|S@rJY*MHUpZ&Uj|DkvztfB$~{`t<<;0du#1TYczz|Jtwp z{r!($|G9tv{`~p#&!0bEP*9McpRb$x`s#z<;VthS92|~c`}P0-fBEQFK#~CiDE?$& zWMJTB&;iMS>~vtwN+|A4@ibe}x^}fm?BpX+p^G;)EMj=$)xBw+fHJ3mOY_1BMus=q zI=vg7uf7|`#HDJn+LViRa%Q1OtN`=csNRZ&5~mibetP4&eDD3Kp?hM!+Ugm^NHi2y Zni?>*Gx@S>@ba;XPMJDYV1gopH2{jmV_ER?T8p>D1?DDUn^_x9@(+G TQzUp|nxC`h=0hLLI2o(~lg}(7 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_off.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/cal_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..42ca20dde834def2684dca59eedde888e1ac21ef GIT binary patch literal 594 zcmZ?wbhEHb6krfwc*el+|Nnn)AKx=)&M*W&WQzaAkocP+^eIEgLx$i-3_%YWqQ5aD z{$d7-2R~ql_{b3Pfg$u2L)dGE&}TMLlUA=@!w~vJFyX0v+%$&ZCsq-C_OX*x^WQQA zJ#mPe>JUFoAmNpL{0y6@evYWu0`af7qMr)HKD3USz!dU~A?y`H=xe9MnQT$77=oTU zCC#>pn!pwPge&nYSKLRT_=gr@z4kGam_nXgNA^1;%+$=f!4dn>BCJQV;00U!H=%^b zY8h8-qbAx!PZ5fH?hrqnVQ2!ypDbX9>wrj5oG`GjZ(wR_ZfO-^;$Uaz=4%yVT-uj7OnS_ z`1n2H%=a5!vQ La&mGb1A{dH;OmZ8 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/column_sort_asc.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/column_sort_asc.gif new file mode 100644 index 0000000000000000000000000000000000000000..1a59c98e5589d067f99e669c5557195f520006e6 GIT binary patch literal 73 zcmZ?wbhEHbceMnuu7?UXs#+gdZ>VP36o=kff0 zd+-0Zw|Y+W>u;=_0STc~QpnkIHO|=~jICXm)+9>#Bp{+BGqHuTWa`)^yC}H#v#+t=t+-r`mj;JUSysLhsPGrf#R1!tT1Oo?05|dT~G&!IZV^fpQo)Go3cw=aOu7H-T>Neqi2X4z)0bLQ|KRm4YE ziuR<*G_hO@{T4n6%A3=f?$W&HUu^oT+9XJSrkghW^ev{0luJznoLmW4K_QovmU8IM zQVLjA$N}_1$qJBPm=PwZboy58uEN|BsMbxw576ZlpU+xac*0{XG{AK4kizawoJ%#?1}0W%0NSp1&$>ifX1y9UsYL7jTz_ zHDg~DG5CF0@2+xAMTpX~_u3i%<838R!=40A08EKZ5`c5;60Q;^JIlxvDW$xcL$7vL zO6i+yY(Vm4%WG-{QbBE*@1AP+Ru3I`Bu5kipVkwVloRc(JYh#GZH0%5@3d1>t`cRW;bMVvcf`@$XX4HbTU< zYTpAy#mgm-l2l%g34A&_Ybc$kJ9xsL4jL#c-WZ1TO0>Z53qr*g9Xn_}gbI4`@ktCm zJA@`0B2?TTdd#|pjfj4bArRM=8a{BcJ<7_S$Xghs#wfG!$?#O`FAiSQf88@2340s# zhvRuT>dk}Ne-#g!{|?_0+8Z=|XRjH~v#XTb57$O42|gw9-7V<(ma#%g3bfi%{cVL- zLPt^H1O-251LwWU4NG8hoqNp2$2&Om9d#agb|nPpF3FPJ^@NRjx9{N{d&5wd4nq!Z zCT#Sa@lej3>){E{_s|qbK+cEr8gRcp!bM-tUfOwET{6mAndgZmrbMKA}!RGqJ zw@HDP{8ayZhXs~rW^(|XEztvJ8I(xgQZweD)>9Hjssi+~3T(YGRZ914Asig6@s*=x zgn%+WzB7B{VV|yUH>LaYE}k3-F#cnnky!+gkJ9@vzq3B)#MisrN)CFQP{7FTXYlX7 z(C{htXyiHTT+I33M}qaU9*T0kNQ1GF7@qC53qBtge;{Q6gUXwH3WwfzL3wA|FTGFJ zFl_3ZLDL1+h~Sed?u>Ps1WR-Zp74=Ww< z%PpoPyJ>BS-YMO*Mv0p85R(mL>I$)}bigoC=Mc?nmFFfe*bVCS?LPsKhdy@xl4tNDQ{QrPx=&QHef{bmhzS}>3Si;f9c?3cHMxYMt z2&|t7qL$9p*WZ+`OWE~1ckb_S*2K(WQ`onG9y`5kfC*88`s-X#xS%V zz|ayL4cfoqwekBf_6I9IBgW7?2GaT~h;b1EYL5JUxft-iUc58~dC3RoPacb}9>*6a Y&8uDMm(%Xm-VFKtiO;5&>?VHmKRcLMYybcN literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/connect_caution.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/connect_caution.gif new file mode 100644 index 0000000000000000000000000000000000000000..34c8ba10000c8ca24eb0b11cbfdfdb834e0acf3a GIT binary patch literal 568 zcmV-80>}MFNk%w1VLSjC0M$PL3=9mtnFv5YK=t+Y>+9b%6A^8LW002J#EC2ui06YL0000L6z@KnPEELv~iGaU?+mS%?}afTv}K z0|vSn6oA=-0U%_#w`1ttU-QD{7 z`tb1Zyu7^U=jZP3?vIa;wY9b4;^NrY*vZMszrVlJ)6@R%@7LGYi`9?u(1FC|NsC0A^8LW0018VEC2ui06YL0000I5;3tk`X`X1Ru59bRa4gSsZQppV z?|kq7z}bLsNGME+1Hm8)I13hH!lXzN7A6B>5@`(}oiL?D2ww^Sj(QCUPfCYy2Z9|n z6iij0Yr)9iu4{ zjEM?ih6ElS0s;hU908IdfOvW%6L=6uDhd>GjwBHkY6Jtb0)+*F041zq#3Bn|VO=c^ z5{V=Q901P_8PX00Y9VhI-Me=mJ$m%~`STk$ZtUN` zf9uw*Cr_TdeEIUOUAs1H*zo`Ve+E*3;!hSv1_l8J9grrFoeZqo6jb_BGUsKiT9@;B zUxCi~lHB_h>)zMA|L<^9fx&>ohs|L@f|3BQnxm0}fhbdtbM}Uc3elwv*H6oc9^-f8 zG>8jv=O}4bbyId@{=)2#^y0oidIqCPP6o4fTXKL>Q*w=RS4vvd1f?qeR87u$Wu~eY z<tlyrajJSvboB a+1a)^-ne<|_MN-;?mu|==9y)X=EG(?AuP-z-^u>!8&!0d4{{6eJ zukZc)_us#N|N8aoBS(%*oH((&yZiCu$AAC+4G#~Gii(;rVZzBJ9qB9d-txQqN202^Xb#4 zr%#{u@bIXqsX2G<+@?*Nf`WoBU%uSm-|yz;cJky&4GoQ>N00XQ_Flbub@JrN$;rvb zj~`D-NpW#;v9z?DJ9qAi6)T=Rd7`7EBPS>K|NnmmsshEIEQ|~csSG+GQ$caUz`mg& zwW+zKwXMBHMkm%{le0K8GfT3MiIssg7l*fm ztdy;}xTBwNN{FZYSsr)hNDC=3Gs#p%F@>KO6quO|UrNOM6iRcFWN@jNae*n3YZ`|a bPl&_91c8Qr1?MmamrYAfPHtjiWUvMRnk?Tx literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/images.jpeg b/Music_List/WebRoot/xmlhttp/css/royale/css-images/images.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..b4318a17a115bf72c12355133a1ed7c0a4518a98 GIT binary patch literal 422 zcmex=^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<>8HAM_8-XfB5K>STOdtaVF$`oBRQ!L7fd^<0lOVGogFVAd8KX*>nmtp0 z&lKI1?WXmK&+Zv}q@ zw2ri`ICIbNQ(RE6$ZlbcNoUH;G8bj%rgJaII+MLwQ>c2q=D~xrBH!09G0@S>^2y?C Wcpq{9gYX3?@7*mAXBC1ERlvc}LFyDB4IW3oVX`>Ty@UvNBU|d62eH_0=e@2TUeDeEp{rm>5^(?Y@5OyERrz`~^;W zKHq6E|J2fB4mS$jGUpwOV9j~Wre%7j#P*2rs>hT1K5;Y_c!)6A&jMMJS8>j}*wU3r z@M8A1Svg|+9vm|D5o12tQu1q6-s+oqPAu4>B=Ccb%j&I0uPd$ZN-|W;OPsgDG0ySz zzJpo3CAs`XQ{P!`U2fZw;Gx6Sw1C%WW~7nj&gDl=E>T;nux68b>ocwg8!S2mW^<<) zB%Y0%e7oS#Y*|KZw)lPU=v=k8{8i`fyOR{F=4H%sbSTSw&8Ka4rbISA-R@q;yw4Dy zIL=m{bU4~5-_Of%3q&1A{dH?-C!$ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/line.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/line.gif new file mode 100644 index 0000000000000000000000000000000000000000..0597cb126ee5d41dab4882b3499b71c08ab2260d GIT binary patch literal 68 zcmZ?wbhEHb6krfzXkcVWOG{&5U{L(Y!pOkD$e;scGk|0mn5299SF*j{FEz*iQn${r Vs>|;j6JGQzNt!p)Y9=d#H2?ww6L|mt literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/line_first.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/line_first.gif new file mode 100644 index 0000000000000000000000000000000000000000..975b2a9e3ca0dab6d8a0354e4af731dc7f5674b2 GIT binary patch literal 67 zcmZ?wbhEHb6krfzXkcVWOG{&5U{L(Y!pOkD$e;scGk|0mn5268SDt>$zj)4;C=RE4 UzZSi*OgPcABx#;}Fav`%0QLP6)&Kwi literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/line_last.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/line_last.gif new file mode 100644 index 0000000000000000000000000000000000000000..f5a08f400c9375cf865cc45f95371babbe237009 GIT binary patch literal 67 zcmZ?wbhEHb6krfzXkcVWOG{&5U{L(Y!pOkD$e;scGk|0mn5268SF*j{FEz*iQn${r Us>^I_3*DzZ>s^I_3zwIql*Xk+ZMrNa!e9*m7BLdl literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_blank_icon.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_blank_icon.gif new file mode 100644 index 0000000000000000000000000000000000000000..54b5b74ea12bf39647a0d33ec2ec4983b1004624 GIT binary patch literal 836 zcmZ?wbhEHb6lM@+_|7m2Mnhmkhk)Ww7DiA2=zs`No?zfmWMJfw@z}87U^9oXR?LYF Z3lFyoD0|KE*tqCuw}f$4h=c%xH2^W05Y+$x literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_checkbox.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_checkbox.gif new file mode 100644 index 0000000000000000000000000000000000000000..681778a0ff198f579494d6f66e8c4dd23d71286e GIT binary patch literal 191 zcmZ?wbhEHbFVYKKlIm z|$VbS)kCT5;^Bcf(B=ifzql? zdYg~DytU6;<(Wwwi_)yOIfvUl!e2Ye@dXO}EHQC$SKp#2XgWE}(?MlT5pyzQskYnn Jdy54atO4zuPWJ!+ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_checkbox_selected.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/menu_checkbox_selected.gif new file mode 100644 index 0000000000000000000000000000000000000000..dc70409344fb6a7e937760cb4a7c365b6e886579 GIT binary patch literal 448 zcmex=^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<H1t=;j2-3`oB+kghz$_?am{|DX|1Aa{W=5d> z%z_N|4DKs`E%S*ByK>X?^qEOfn|XZwmD5DS+?6zbJT9^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<!nXvKDA7vmk>#L;mgB?f!cU-<^9N zUv?xu^TO&Nu^Tf&nr^BJaGmiv)Agrw`UM6lHSdi#jJ>90Nq@`rRB8GhXOwJKv(r#e zhKZf|!mAHoF2^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<8LvS(xE6 zj7-cdtb%Mph77`rj-rVhfr>=Y^)fIrfy@-d5EoSZe~W>KnGt9)vmk>#L-OjcH6;Rf z-j!Q#J=S*CHDcS3gl%q%mQ~H&J!4wV3g0F3RnqepF{I5(bDwruX4#ADT9p^IG_~aP zZcE5I`rbQTp)!fB_`u^;)BU2C{bZdqOY*_`(n*VEEi+W%JKZC9^W&Tb&nFX%4;))k UI7R2o(YZU-Kh&05a{s>x0DF&T1poj5 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/node_close.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/node_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..722763bc07f8d1060b449c4617201146314faf2f GIT binary patch literal 88 zcmZ?wbhEHb6krfzn8?78mX^lAz+jv<6G$rlWMO1rU}n$(vKc_~3{0AH`d6NQ%fGl} pLDX)CdulRk8=BKQI>eT|T(I@NeT|T(I@N{y{YJMOy6^>4PK4AuY{%NS<> literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_first.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_first.gif new file mode 100644 index 0000000000000000000000000000000000000000..a24ca319551f2c3423afff46f68476119c42e616 GIT binary patch literal 85 zcmZ?wbhEHb6krfzn8*MEX=!Q3X)}Qg#h)yU3=GT+Iv`PyJOh*3oc@)k-|{amSs1n3 i>7G~lyo>`De77nq6gyVv&W^jzvhz#wecwD025SIi6dB6^ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_last.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_last.gif new file mode 100644 index 0000000000000000000000000000000000000000..75c6e1d522acff775d949f38d1f2df6bc71fb6f9 GIT binary patch literal 85 zcmZ?wbhEHb6krfzn8*MEX=!Q3X)}Qg#h)yU3=GT+Iv`PyJOh*3oc@(!ulGyM@xLU! i>Dor^?uPagB?l_`&RSJ*uH2QlCHH#o^I!W!7_0$j#~UC3 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_middle.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/node_open_middle.gif new file mode 100644 index 0000000000000000000000000000000000000000..fa28a082ae5eebf1c0afe212a80b22f3cbf79435 GIT binary patch literal 87 zcmZ?wbhEHb6krfzn8*MEX=!Q3X)}Qg#h)yU3=GT+Iv`PyJOh))oc@(!ulGyM@xLU! k>Dor^?uPagB?l_`&RSJ*uH2QlCHFe-{eX4Wm5dD50G7)dfdBvi literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/noline.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/noline.gif new file mode 100644 index 0000000000000000000000000000000000000000..af2f8eb64bbb8b2a2be467462732fa89e2d0d1fe GIT binary patch literal 58 zcmZ?wbhEHb6krfzXkdT>#h)yUAf^t80Ld^g3AXgFJpGn`@tiHUx;Nk3Qysv-U=08x C{0;#C literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-mid.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..1e894597f4c653cedb7965f53cbaa1a083525efc GIT binary patch literal 138 zcmZ?wbhEHbWMR-@*vtR||Ns9#d-2Yx^S94ky0h=t^#jMRA3c3@)85M`&fU6n?cVt- zcNu&y96xvK!qvM#m5M)E7#SG&ftrB;WCjC^`3J-2DpS1@&u&_KW|IetB4?8cPtYU} pUuD_$6p5ff4~|2>d+y~+uyA!BS$ye)kJ-cvON*syzbP?T0|3w5K*s<8 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..c252020806d8b5db4213f1c0f309056bd35a9cf3 GIT binary patch literal 48 zcmZ?wbhEHbWMN=uXkcWxaOK_q|Nj+#vM@3*Ff!;c00Bsbfr-7RpOfwOeJ%!T07_a6 AO#lD@ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..060bb835052d20ae9f4d741856fa2974f2214401 GIT binary patch literal 67 zcmZ?wbhEHbWMN=uSi}GV|NsAI@V#*1>Rk{61{8m?FfuT(FzA2;Kx!G7IXrgV(eZMy I6k@Oj0DmD6ZU6uP literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-mid.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..c85571d3cc4bb7fa14fcef8b80ea82774be1837d GIT binary patch literal 123 zcmZ?wbhEHbWMR-@*vtR||Ns9#d-2Yx^S94ky0h=t^#jMRA3c3@)85M`&fU6n?cVt- zcaNXDb>Zq=pfaFh#h)yU3=Dig%|HM$gMme3!%5Aldv9DiD*m%Yfy>!aCF9VVGY{q5 YazsiR?^LXNU-SO|fdvH|Jq!%i07{iShX4Qo literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..27fd083039befad632fa14f94ed90e5364e89acf GIT binary patch literal 47 zcmZ?wbhEHbWMN=uXkcWxckkZ+|Nj+#vM@3*Ff!;c00Bsbfr+grf5GXytPIuwLrx5? literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-mid-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..e5abde9c49ef3d5c4e2d6cf6c7184993652d544f GIT binary patch literal 68 zcmZ?wbhEHbWMN=uSi}GV|NsAI@V#*1>Rk{61{8m?FfuT(FzA2;Kx!G7IX!mWQ3>er JOlM-S1^|-05g-5n literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-mid.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..fc7397e9dfbd5a7fb1ba7349bd56a4964a6a511e GIT binary patch literal 138 zcmZ?wbhEHbWMR-@*vtR||Ns9#d-2Yx^S94ky0h=t^#jMRA3c3@)85M`&fU6n?cVt- zcNu&y96xvK!qvM#m5M)E7#SG&ftrB;WCjC^`31{wDy3bk{(PHzep3L8BPWw7PspSI oUuRkNREdzl0FFby`|ssTuyA!BS$ye)kJ-cvON*sy<&+t$0o;^87XSbN literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..d4c14a5282f97c9c36c29a26c2a3145c2e8cc1fc GIT binary patch literal 49 zcmZ?wbhEHbWMN=uXkcWxaOK_q|Nj+#vM@3*Ff!;c00Bsbfr+E1pN(C5uYv}HH2_i! B3#b49 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/off-right-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..d15cc7cba3d01cffed46bf0661281dca5aa6c09e GIT binary patch literal 68 zcmZ?wbhEHbWMN=uSi}GV|NsAI@V#*1>Rk{61{8m?FfuT(FzA2;Kx!G7IX!mWQSo*# JQt@Q41^|#J5WD~Y literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..d8db472e9062e375018d38d718af5730577a3aaa GIT binary patch literal 53 zcmZ?wbhEHbWMN=on8*ME|NsAI2zv!26@RiYGB7YR=zv5)@(fIDQ-s=PiL)|T0|1HF B4EF#4 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-mid.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..7d0ef8ab165f42cafe03ce3fa8718b625c7d5511 GIT binary patch literal 70 zcmZ?wbhEHbWMR-@n8*ME|NsAI2zv!26@RiYGB7X$C4c}V&%h);MW}7o_180cL~gY| Szq<3=+rlJ|rf2P<4AuY#85s@$ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/on-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..7ae5b8f5bf8a9e3bbf52f1814d41981335daec2a GIT binary patch literal 70 zcmZ?wbhEHbWMN=uSi}GV|NsAI2zzB%aBa@Kg&;NtHMeC83xhQP)KwEo literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-mid.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..efab767334fe3036a969d30989c8840cf2c6684e GIT binary patch literal 131 zcmZ?wbhEHbWMR-@*vtR||NsC0`u)$F4?jPA{`KkW?{7c;FoeDO{O$LTUw?s8U?m7b z@h1x-0|OUOGZ28xU|=!$FlUO&*3xIIH<}z1mupg(D%7;(b)bllqsL)~+wQgRE!TbD VGyj4+k67c0g@rS1t|>8C0|4-WH&*}v literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..ae3ed91fc621fac134dd83862d23f61ed0c95e9c GIT binary patch literal 68 zcmZ?wbhEHbWMN=uSi}GV|NsAI2z&M8*Iy6=1{8m?FfuT(FzA2;Kx!G7IX!mWS@h_r JrW+H3H2}1O61V^W literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-mid-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-mid-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-mid-mid.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-mid-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..464a582e7ed477dfc6332bc5198419e76c09ed44 GIT binary patch literal 113 zcmZ?wbhEHbWMR-@*vtR||NsC0`u)$F4?jPA{`KkW?{7c;eE#XQAkKS%FH1kaK>YU17i~l qhk%ShLdr>I72j1Zl}4(kr|Kndo5MNz+3DFv*{_adUQTsjum%AA6E+tB literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-right-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/over-right-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..bc7963b9be888cd5b0df08c867975d62d1c77652 GIT binary patch literal 68 zcmZ?wbhEHbWMN=uSi}GV|NsAI2z&M8*Iy6=1{8m?FfuT(FzA2;Kx!G7IX!l*+4N}Q J4>n&0YXG(f6FvX{ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/popupclose.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/popupclose.gif new file mode 100644 index 0000000000000000000000000000000000000000..cf5782f94115691fc5607b3596b6bac719a0b86a GIT binary patch literal 326 zcmZ?wbhEHb6l4%$xT?v(AvK>>@*b-ghN7>!GOn9%0q{V(N=yGj`UrJ)gbkH3Kz(;!hSv z1_n(A9gtxlKQXW+ADB|$p(E9QV#%hD8bdYUR|mKAEQUF5 R?0l|^yp}Cr;pxa=4FFrHa0>tc literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/popupicon.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/popupicon.gif new file mode 100644 index 0000000000000000000000000000000000000000..7f10f3e81c9b6c9406320efa1e955877469694bf GIT binary patch literal 988 zcmb_b&r8&C5S>EWB}{O4Bg`N@XcU&_K);DZ+LA6R3Pyn?F$XP)&J`;L9o$2g#G#-l zf{?vLzdUqU3%u+cq)Q2%ilRdh6%m3lz4`nN4J_ZCotZc9z4`8mzT$y{=NlSZc4aqqYz1q8fizfx7HU`wY(N7G!ybYnN2rL2c<94gWU8Vj>LC{_ zP&5@YF^77PLa(@rn>ggb575Lk?0|ldfI_ea7)XO9TEPR0femP2c{mqkqhtW_AE8z!dVj6aU69hvcSOW~CF$r4WfyKZEw8x2} z8)f7O$HibI^kFSBOD|dYn(iINbi%MXT_t*x(cyaXE=H3bafGBWkP_**N#YT}2^y~h zt_1U-39CBdZI1r}Wfy6CcH7BYTPs)V@(mw~pNr+@`9gc;%Jj$C=4@tZSK(C4^X4-P zXJ4(GxIcHZ@Z(bN>Ba}uk*>*7CHG}<)9#j+)%Weo{k56l$HNm%ZH zw|BH-cFVh?U4@6=2JdiB!`i3Wv2tehMgLm<_te~@*3LacU(4gQr@74aYYT19UXNUE J+fYY`{{iO~t0@2g literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/remove.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/remove.gif new file mode 100644 index 0000000000000000000000000000000000000000..3a1725dec6d368d23640fb6f6f486c618c86e7bf GIT binary patch literal 76 zcmZ?wbhEHb{N}G>aE)VU?P-$QrWee>U=0A`eHs@4 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/resize.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/resize.gif new file mode 100644 index 0000000000000000000000000000000000000000..785cd8340202bac5f4659db5b32913e8f63e189b GIT binary patch literal 121 zcmZ?wbhEHb)?85PcXNk;&ZWganH+=P Vg$S6;KbK+bupnynjcg_cYXFKCE&u=k literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/selection_spacer.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/selection_spacer.gif new file mode 100644 index 0000000000000000000000000000000000000000..6c9ed1231a231a61661e9debd619f780965cdf32 GIT binary patch literal 45 ucmZ?wbhEHb6k%XwXkcLY|NlP&1B2pE7Dgb&paUX6G7L;CE&VfD8LR=|$q0=A literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/spacer.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/spacer.gif new file mode 100644 index 0000000000000000000000000000000000000000..35d42e808f0a8017b8d52a06be2f8fec0b466a66 GIT binary patch literal 43 scmZ?wbhEHbWMp7uXkcLY|NlP&1B2pE7Dgb&paUX6G7L;iE{qJ;0LZEa`2YX_ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/submenu.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/submenu.gif new file mode 100644 index 0000000000000000000000000000000000000000..dc776de65619e29af077658f4cab5869a1484cfd GIT binary patch literal 67 zcmZ?wbhEHbyCBcxh%(BTJ54c(Ucom@{jJ zEMlC>oF+wH8nwd>b=S;L-9`?T!ZxO0=%&AWH((!PW9zAe1?Y~sd~ zt46N8`Do_OqkD!fz4~A3*0bxyuDv?|?%uP54_|#e`RL})H&3rVIs5j--@^|se|~Qf a2lDIR&%eL_{{RLk;D7`cNFW6v002AHtXwSs literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tab-on.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tab-on.gif new file mode 100644 index 0000000000000000000000000000000000000000..64720cc1aa49716ffab0097565ba1379957a7ae9 GIT binary patch literal 295 zcmV+?0oeXWNk%w1VR!&C0HOu}|Ns90R_ZZu)~&Cy2ScNro}vH${{R30A^8LW000I6 zEC2ui0C)g0000B*Xe!+PFv>}*y%>hAI@@3qjgaOTnXZSxhpY(3mq&C=9OHtai)odcWYXc&x2fLx8k;&2GEj@VI3Hr>U%_8?CT> zqp`GXv$eRlxU{;vu)V&lz`>})#H7Z@pvlUd%*~k3(3H~ClGWCZ*x8EP+^VnNzpLWH th<^h_W1ns_WSVj`ttSr>hJjb{QmFr z`uzR=|Ns900000000000A^8LW000aCEC2ui0C)g0000F4kjY7_y*TU5yZ>M)j$~<` zXsU8T>%MR-&vb3ycurS(@BhG{ZQ=?TkI1BQ$!t2G(5Q6jVic#?tai&~!n)wFcpP|< z&*-$$tZuu(?6-UljnnUVqdm`m@B3N=f`f#GhJ^tHVlRh{j*pO$l9QB`1dNuMnvMgV zo}ZwhqM({Dqo=5;s;jK6uA`=}va__cv@Zp@y1Tr+zQ4f1!o$SH!nnrC%FDS2&d<=% z($fdaFVxuC+S}aO2H)V};@{odFXQOx>g(+7?(gvILi6M>u%W|;5F;*hA+e&xix>eg%*e5$M}Ql0KZ+bFF(k>8C?~c^$+9I#iY{ZO zG%2&DN18TsUc{-hCq$k;gC+zjv?xKMMw9+Ss#Gb{rbeGa6)JVA&#G2+V$EuED_5Cb vzq$-7mL=J;D9@rL`2vC4w{YXiolCc_-Me`6>P65`fq?@96eU>DA_4$AR2%j6 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/table_col_header.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/table_col_header.gif new file mode 100644 index 0000000000000000000000000000000000000000..7c63c8f3715d0606ec9c1e9b886633cf37e0460a GIT binary patch literal 1087 zcmZ?wbhEHb6k(8H_|Cw zuAryZlm9b?JZH%S>V3+X@=vw@KTF;__LNTyajzIs|1bnUV2-}UnEID3_dP@CD~8xt zj4A&aL!YuIe_{xI!T=I~#}M>{G3763>^G*6XEu}nvqaxyNc+PO_DZe)KPyny`w2_l zd*;ml%s}x`Fd716g@6u77bq_fhX)6*tO{QnbTz8<5DS;co+eT0Z`qL>m{?Ri8kmmW+Ln2J zS?}zGbq(8!olUBm+TWh ztG_m^`qsGmd(+A<4QswOuKm)m{%g~kFHP%!>>rJ5el@KB+qnL3)5h-&+rKw%|K76U zd(+0B&6|ESZ~E1^>3_raAC237G;aOhvf*dz#vd&kez$J?)wtuwl;i&%{%#jJ`kPy&oI=0;!hT^lXXBOC{7sIKQ!<+H3Hm3Il0)`*-UeEbg{R!wYPV0o@TXlnU(eO<(A8|wY4^EurM+*+_rt)1``u= zeck=~I;N(2n#c6aOmy`XRn94%RXTV1qVi=Hwwo+0%&Z(-4>&m3Id9$+fALbBk?-wW z9zF)C&r-5I9ar`eY&jGo;g1^wVa)8QT)v0;O6D$=i7^O$a-zb2o&*{ mtQEWKOUvcu0gK&Q9k;H!x;i{PRk|H6pV(zND2WRkY_=8fq_Giftf?VK%v2b Pk&RU?=0riF1A{dHFclDC literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-left-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-mid-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-mid-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..855f8cca49b410d004c9d35a57963aa8e5df3132 GIT binary patch literal 812 zcmZ?wbhEHbWMN=u_|5Rk|H6pV(zND2WRkY_=8fq_Gift^D}BcQ>N Pkx@u1=7fQR1A{dHG4K#Y literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-mid-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-mid-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-right-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-right-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..700589fe47fd9267eb7c7abb62677ae5a8afcea8 GIT binary patch literal 811 zcmZ?wbhEHbWMN=u_|5Rk|H6pV(zND2WRkY_=8fq_GSft^D@AR(cl OiCtJLW`}_SgEasp>=0)F literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-right-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-off-right-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-on-left-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-on-left-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..4b6bd0cfe9e7dbad0b7ba0338af4ee385d22b7a7 GIT binary patch literal 819 zcmZ?wbhEHbWMN=u_|5z+piH S11rB$NXLeShZz_d8LR;*=@KIV literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-left-top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..f266e974f2ad30abf03cacd49f1fdc9f3ce8b329 GIT binary patch literal 49 wcmZ?wbhEHbWMN=rn8*ME|NsAI@Vx*e6@RiYGB7YR=zv5)@(fH&Q$iW60a1tx(EtDd literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-mid-bot.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tbot-over-mid-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..de00b659d9d67ba1195e13510899eac22a21682c GIT binary patch literal 812 zcmZ?wbhEHbWMN=u_|5EBUAlJ5 z!j&6(CQX0-?u(OOxMyfwa6(p6LG}JK*Y=*ea_Y*Rcb~t1|MlnF&)-0Ig58TkDE?$& zWMHsl&;f~p{KUXE@xYt{4;`uSrAsz#F%t4!x8h6DY>U=Seo4ERR^%<#eziekx-QSL z-lsN_A_Wz!&h8eTt9s++FFc!7<|eEu)!Npo+30G>C)3y8$Jgbe%+EW0#&rJ4&Wfx8 z3l=V5o#SM{!n|_TN|vRTN`hvaHg6JKr!OS9YxgdpbqW?jhYlaISSQbP^3>^dx*X>( PT+|J}a`l?4BZD;n--Wtn literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_close.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..198d51efb5529fb03db8cf2847ad77a940474d7c GIT binary patch literal 617 zcmZ?wbhEHb6lM@+c*Xz%|NsC0^7Y4uPv75v{C4m0yQeQdvKY5Mdj8@0>raLS*Zc}s z1edOkuiseMyR&-gzPjoACoMlYbM4s$n=Y)}b#?9DYa0*T*mCIR_M^9VpSZj4)V<>u zADz1LdhZA@+1 zoZ7lMyK`H~gx%$n_LNWFQ#EyO?TiDBvk$h+J=`+)Q1_yveM^r|U3F^O>QghjVap&OK`$sN3JbV4wrQ0tr+-aL5r{?)rLFW-Lt z{PjnA`n_u=#RlUJWSdh!0_m+zmye*f_K z-TRNPSFc_T3=?qJ(40{G$->CM5X+zgvI!I?4D81mVxzcPxMJHoIy<7dy!*V{x+eAZ z_q9&%VxQX2G?hK3bJm3EOIkZ-P3fCEds_P}_SLH*`yxVF6z0dSk6@Np@buzjW8(;6 z4cf`h$sX<@=N|0l;_B)w6X0}GmOU^`+R0JMK|;b_Ow|9RB)j-?5j$HOYilb@LGzQs z>_Qgb&HPN$&NO^@(Au41!gr#B@o;Oin(hpP$c2jzcE-f;$s|lS2&zkkr^A iuya?+l@ps%y#qRSoS5S|dD)WL7R9gb%rq8Yum%9=%p4j3 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_closed.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_closed.gif new file mode 100644 index 0000000000000000000000000000000000000000..198d51efb5529fb03db8cf2847ad77a940474d7c GIT binary patch literal 617 zcmZ?wbhEHb6lM@+c*Xz%|NsC0^7Y4uPv75v{C4m0yQeQdvKY5Mdj8@0>raLS*Zc}s z1edOkuiseMyR&-gzPjoACoMlYbM4s$n=Y)}b#?9DYa0*T*mCIR_M^9VpSZj4)V<>u zADz1LdhZA@+1 zoZ7lMyK`H~gx%$n_LNWFQ#EyO?TiDBvk$h+J=`+)Q1_yveM^r|U3F^O>QghjVap&OK`$sN3JbV4wrQ0tr+-aL5r{?)rLFW-Lt z{PjnA`n_u=#RlUJWSdh!0_m+zmye*f_K z-TRNPSFc_T3=?qJ(40{G$->CM5X+zgvI!I?4D81mVxzcPxMJHoIy<7dy!*V{x+eAZ z_q9&%VxQX2G?hK3bJm3EOIkZ-P3fCEds_P}_SLH*`yxVF6z0dSk6@Np@buzjW8(;6 z4cf`h$sX<@=N|0l;_B)w6X0}GmOU^`+R0JMK|;b_Ow|9RB)j-?5j$HOYilb@LGzQs z>_Qgb&HPN$&NO^@(Au41!gr#B@o;Oin(hpP$c2jzcE-f;$s|lS2&zkkr^A iuya?+l@ps%y#qRSoS5S|dD)WL7R9gb%rq8Yum%9=%p4j3 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_open.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_folder_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..be50b702b051e724c3603cee848d0ac167b65db8 GIT binary patch literal 409 zcmZ?wbhEHb6lM@+xXJ(m|NsC0{{7dt@4sHZ`^sY6diL70SMRxYj!NNZY(4 z)7P9`x$EkxU03&^Rw5VpSkwz&f|Asm21N))`V5ANon4k(z3Z^!tRoZyGthQ zYMpnab>89WYtGDAduHYCtE+Zj-F@=j?vr=-oV+Z^fx(DD2c#6_CkD1{4mY(OedeT`SR%yf z%`&g?NRd{t)BK}vHWgUy^lQ3&;Pzjy$*t3FT~XTN!~XSPOUJ^<$!p^Jb=HJ&vI(fx zs|pFV2&$?EvGQ{&@hd4$RGKzTi(iG+kX4bBS3yxhfme}_Z;|GbIjo!-JaQVFa3EEm@SnLVtml9EzVlG5kTUD{(bS6t%etsA!_uFe&G_)zSzn26|A dkGZGbygg-D=Jnz8moFjTfBgLQ+sl!`8UWM$zCi#0 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_blank.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_blank.gif new file mode 100644 index 0000000000000000000000000000000000000000..b4a7cac42a50be0f24858a23c1b642a45056851b GIT binary patch literal 64 zcmZ?wbhEHb6krfzn8*ME|G@yrQ2fcl$iTqFpaT*G$ulqsPU&BH`Yr$BIa_XZZ@#yu JI*@_E8URM%6dwQp literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_last_node.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_last_node.gif new file mode 100644 index 0000000000000000000000000000000000000000..b4a7cac42a50be0f24858a23c1b642a45056851b GIT binary patch literal 64 zcmZ?wbhEHb6krfzn8*ME|G@yrQ2fcl$iTqFpaT*G$ulqsPU&BH`Yr$BIa_XZZ@#yu JI*@_E8URM%6dwQp literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_middle_node.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_middle_node.gif new file mode 100644 index 0000000000000000000000000000000000000000..b4a7cac42a50be0f24858a23c1b642a45056851b GIT binary patch literal 64 zcmZ?wbhEHb6krfzn8*ME|G@yrQ2fcl$iTqFpaT*G$ulqsPU&BH`Yr$BIa_XZZ@#yu JI*@_E8URM%6dwQp literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_vertical.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_line_vertical.gif new file mode 100644 index 0000000000000000000000000000000000000000..b4a7cac42a50be0f24858a23c1b642a45056851b GIT binary patch literal 64 zcmZ?wbhEHb6krfzn8*ME|G@yrQ2fcl$iTqFpaT*G$ulqsPU&BH`Yr$BIa_XZZ@#yu JI*@_E8URM%6dwQp literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_bottom_close.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_bottom_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..027f8d769bdb8386195ec4f37483aacea34d078e GIT binary patch literal 882 zcmZ?wbhEHb6krfz_|DI8;@U6S=vQSkKDw5_Q;mLEKJ%km%*&5o|0%@0E}r>0rsaKV z|Hm~4zvayQq#XT%VHAvp!0-wI#h)yU3=I4XIv{U>@&p5iKZ87njK_ur2b(#BwPH?8 zNN8kYmlx9!U|8hLBE~M}&=9z|u}_?{}9OcWTb0l9%X+W-In literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_bottom_open.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_bottom_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..cd73f28457e4819136963ee9caec0069e9aca898 GIT binary patch literal 129 zcmZ?wbhEHb6krfz*v!N5@$0|RnV%G6URf8sP3`*_-tykF>fP#t-@U8f9l!Rgc;+Yh z=vNF#K=CIFBLf2ugAPaxWCjC^-h`8$tM^*mKhQj_QK2f{qOM1C!mOPeA~$g4YhN?m Xd&?we<-T}!R~@PT6HA0d85yhr=ie}( literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_middle_close.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_middle_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..027f8d769bdb8386195ec4f37483aacea34d078e GIT binary patch literal 882 zcmZ?wbhEHb6krfz_|DI8;@U6S=vQSkKDw5_Q;mLEKJ%km%*&5o|0%@0E}r>0rsaKV z|Hm~4zvayQq#XT%VHAvp!0-wI#h)yU3=I4XIv{U>@&p5iKZ87njK_ur2b(#BwPH?8 zNN8kYmlx9!U|8hLBE~M}&=9z|u}_?{}9OcWTb0l9%X+W-In literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_middle_open.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_middle_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..cd73f28457e4819136963ee9caec0069e9aca898 GIT binary patch literal 129 zcmZ?wbhEHb6krfz*v!N5@$0|RnV%G6URf8sP3`*_-tykF>fP#t-@U8f9l!Rgc;+Yh z=vNF#K=CIFBLf2ugAPaxWCjC^-h`8$tM^*mKhQj_QK2f{qOM1C!mOPeA~$g4YhN?m Xd&?we<-T}!R~@PT6HA0d85yhr=ie}( literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_close.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..027f8d769bdb8386195ec4f37483aacea34d078e GIT binary patch literal 882 zcmZ?wbhEHb6krfz_|DI8;@U6S=vQSkKDw5_Q;mLEKJ%km%*&5o|0%@0E}r>0rsaKV z|Hm~4zvayQq#XT%VHAvp!0-wI#h)yU3=I4XIv{U>@&p5iKZ87njK_ur2b(#BwPH?8 zNN8kYmlx9!U|8hLBE~M}&=9z|u}_?{}9OcWTb0l9%X+W-In literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_close_no_siblings.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_close_no_siblings.gif new file mode 100644 index 0000000000000000000000000000000000000000..027f8d769bdb8386195ec4f37483aacea34d078e GIT binary patch literal 882 zcmZ?wbhEHb6krfz_|DI8;@U6S=vQSkKDw5_Q;mLEKJ%km%*&5o|0%@0E}r>0rsaKV z|Hm~4zvayQq#XT%VHAvp!0-wI#h)yU3=I4XIv{U>@&p5iKZ87njK_ur2b(#BwPH?8 zNN8kYmlx9!U|8hLBE~M}&=9z|u}_?{}9OcWTb0l9%X+W-In literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_closess.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_closess.gif new file mode 100644 index 0000000000000000000000000000000000000000..ddb1d73dc3b41d6882f3ed9c3d075ba773e2c45a GIT binary patch literal 138 zcmV;50CoRINk%w1VGsZo0J8u9$kzHDTk3Y0@kMv;C0prtneirE>GAdcAYAKnne$wP z?`4nitikqdneroB=>Px!A^8LW000jFEC2ui01yBc06+vc@X1N5y;zn|vbP07AYEvX sU#hOt)=}YG6-E#shRp7K-xs=8Foe>af{)Fu;1D5O0S8C*^sOQQJ6n)H5&!@I literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_open.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..cd73f28457e4819136963ee9caec0069e9aca898 GIT binary patch literal 129 zcmZ?wbhEHb6krfz*v!N5@$0|RnV%G6URf8sP3`*_-tykF>fP#t-@U8f9l!Rgc;+Yh z=vNF#K=CIFBLf2ugAPaxWCjC^-h`8$tM^*mKhQj_QK2f{qOM1C!mOPeA~$g4YhN?m Xd&?we<-T}!R~@PT6HA0d85yhr=ie}( literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_open_no_siblings.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/tree_nav_top_open_no_siblings.gif new file mode 100644 index 0000000000000000000000000000000000000000..cd73f28457e4819136963ee9caec0069e9aca898 GIT binary patch literal 129 zcmZ?wbhEHb6krfz*v!N5@$0|RnV%G6URf8sP3`*_-tykF>fP#t-@U8f9l!Rgc;+Yh z=vNF#K=CIFBLf2ugAPaxWCjC^-h`8$tM^*mKhQj_QK2f{qOM1C!mOPeA~$g4YhN?m Xd&?we<-T}!R~@PT6HA0d85yhr=ie}( literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/css-images/window_top.gif b/Music_List/WebRoot/xmlhttp/css/royale/css-images/window_top.gif new file mode 100644 index 0000000000000000000000000000000000000000..51f4303ceef1eb934689cec480cf9a6fddbc63cb GIT binary patch literal 1256 zcmZ?wbhEHbRAZ22_|Cwv?j4|RVYwAaakcXTx-x$1}uw?#c@OsJ+{J?th zf6kcis{Q|&f!fo4v*f*FNCcYmlquvnd&(!qlz$ANPZ;7}F{b=yNd3c@`j;W~FLU%Q zhR|1xp-&lNU$N!BV+ec25cGsS`4e;WO}5$4>9|rFy zEYUYPW53x<{?9N9MnizC5YPeX0_6n;4qz78(jl(cJaAmfC#w~CENADWXQyXcWUtzisO-WaV^Q&; zL-4SA;C!1}CebPrm&;4+3ok4PTYwN>yR`I?*z{n+%ns`8?+U#xA z<_y^tsnX?ocQ)}z1T2_Po*%!jit#t^pX~;TY`jtt8zxi~CLilkwC?+}!{{j+8;?%J zhQ!0q&doGW=R13|IP=nC)A@3DBfn%^Um30M!8`jan~;i{&yGT8^St{z)&JbP8(s0? z;o-`D2}Q?4J(6dqyQk|p?kaw9b!GJSe>M%@8Pxr1&a&4(I@O@v%{j`!M=aL|2&+2zwR$DM?&L2!4va&j6OV1Xyn(skGZIqm8#P&0;L^3T< vV_@Rgpf)>i-_Eqz`Ij`8&nkN)xqM#rwVUblikP%A=GTc;sn20#WUvMRgGw+2 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/royale/royale.css b/Music_List/WebRoot/xmlhttp/css/royale/royale.css new file mode 100644 index 0000000..367e13c --- /dev/null +++ b/Music_List/WebRoot/xmlhttp/css/royale/royale.css @@ -0,0 +1,2888 @@ +/* + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * "The contents of this file are subject to the Mozilla Public License + * Version 1.1 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + * License for the specific language governing rights and limitations under + * the License. + * + * The Original Code is ICEfaces 1.5 open source software code, released + * November 5, 2006. The Initial Developer of the Original Code is ICEsoft + * Technologies Canada, Corp. Portions created by ICEsoft are Copyright (C) + * 2004-2006 ICEsoft Technologies Canada, Corp. All Rights Reserved. + * + * Contributor(s): _____________________. + * + * Alternatively, the contents of this file may be used under the terms of + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL" + * License), in which case the provisions of the LGPL License are + * applicable instead of those above. If you wish to allow use of your + * version of this file only under the terms of the LGPL License and not to + * allow others to use your version of this file under the MPL, indicate + * your decision by deleting the provisions above and replace them with + * the notice and other provisions required by the LGPL License. If you do + * not delete the provisions above, a recipient may use your version of + * this file under either the MPL or the LGPL License." + * + */ + +/* Basic CSS styles This stylesheet is intended to match the style of the default Windows XP UI */ +/* Default CSS styles. These styles override the basic HTML tags on the page */ +/* Updated Mar 2006 to include styles for new components */ + +/* +=================== Font Family, Size and Color ============== +*/ + +/* set the attributes for the font family, size and color for ALL elements on the page */ +/* make the fonts inside tables and forms == the default size of the page */ +body, table { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #000000; +} + +/* now set the size and other attributes of the fonts for any of the form elements for non-ICE form elements. (note this will also affect any ICE components that render out any of the following HTML tags */ +input, textarea, select { + +} + +/* +=================== HTML Form Element Appearence ============== +*/ +/* set the style elements for any of the textarea form elements */ +textarea { +} + +fieldset { + border: 0px none ; +} + +/* set the style elements for any of the select form elements */ +select { +} + +/* set the style elements for any of the input form elements */ +input { +} + +/* +=================== Style class definitions for ICE Standard Extended Component Appearance ============== +*/ +.iceInpTxt, .iceInpSecrt, .iceInpTxtArea { + border: 1px solid #0056EA; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; +} + +.iceSelMnyCb { + white-space: nowrap; +} + +.iceSelMnyCb input, .iceSelOneRb input, .iceSelBoolChkbx { + margin: 2px; + padding: 2px; +} + +.iceSelOneRb table tr td { + padding: 1px; +} + +.iceInpTxt, .iceInpSecrt { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding: 2px; + +} + +.iceSelOneMnu, .iceSelMnyLb, .iceSelMnyMnu, .iceSelOneLb { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding: 2px; + margin: 2px; +} + +.iceInpTxtArea { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding: 2px; +} + +.iceOutTxt, .iceOutLbl { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding-left: 0px; + padding-right: 0px; + padding-top: 2px; + padding-bottom: 2px; +} + +.iceCmdBtn { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + background-color: #DEDEDE; + border: 1px solid #0056EA; + margin: 2px; + padding: 2px; +} + +.iceCmdLnk, .iceOutLnk { + text-decoration: none; + font-weight: normal; + color: #000033; +} + +/* +=================== ICE Component Appearence ============== +*/ +/* +----------- Calendar Component classes +*/ +.iceSelInpDate { +/* calendar outline & background color */ + background-color: #DEDEDE; + border: 2px solid #0056EA; /* removed margin from calendar outline - better absolute positioning of popup */ +/*margin:10px;*/ +} + +.iceSelInpDateIFrameFix, .iceIEIFrameFix { + z-index: -1; + position: absolute; + display: block; + filter: mask(); +} + +.iceSelInpDateInput { + width: 150px; + margin: 2px; +} + +.iceSelInpDateMonthYear, .iceSelInpDateTime{ + background-color: #026AFF; + background-image: url( "./css-images/table_col_header.gif" ); + background-position: top; + background-repeat: repeat-x; + font-weight: normal; + text-align: center; + color: #FFFFFF; + padding-left: 1px; + padding-right: 1px; + padding-top: 4px; + padding-bottom: 4px; /*border-right:1px solid #CCCCCC;*/ +} + +.iceSelInpDateTime{ + border-left: 1px solid #2A6CC2; + border-bottom: 1px solid #2A6CC2; + border-right: 1px solid #2A6CC2; +} + +.iceSelInpDateMoYrDropdown, .iceSelInpDateTimeDropDown { + background-color: #026AFF; + font-weight: bold; + color: #FFFFFF; +} + +.iceSelInpDateWeek { +/* the days of the week row */ + font-weight: normal; + color: #FFFFFF; + text-align: center; + padding-left: 5px; + padding-right: 5px; + border-bottom: 1px solid #2A6CC2; + background-color: #2A6CC2; +} + +/* set the look for the days of the week backgrounds */ +.iceSelInpDateDay, .iceSelInpDateCur { +/* the background & alignment for the days */ + padding: 3px; + text-align: center; +} + +.iceSelInpDateCur .iceOutTxt{ + color:#FFFFFF; +} + +/* now set the attributes for the numbers for each day of the week */ +.iceSelInpDateDay a { +/* the day text */ + text-decoration: none; + background-color: #DEDEDE; + color: #000000; + width: auto; + height: 100%; + padding: 0px; + display: block; +} + +.iceSelInpDateCur a { + text-decoration: none; + background-color: #2A6CC2; + border: 0px; + color: #FFFFFF; + width: 100%; + height: 100%; + padding: 0px; + display: block; +} + +/* now set the color attributes for the hover effect on non-current days */ +.iceSelInpDateDay a:hover { +/* the day text */ + text-decoration: none; + color: #2A6CC2; +} + +#calendarForm { + padding: 0px; + margin: 0px; +} + +.iceSelInpDatePopup { + min-width: 172px; +} + +.iceSelInpDateOpenPopup { + display: inline; + text-decoration: none; + background-color: transparent; + background-image: url( "./css-images/cal_button.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 16px; + height: 16px; +} +.iceSelInpDateClosePopup { + display: inline; + text-decoration: none; + background-color: transparent; + background-image: url( "./css-images/cal_off.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 16px; + height: 16px; +} +.iceSelInpDateMovePrev { + text-decoration: none; + display: inline; + background-color: transparent; + background-image: url( "./css-images/cal_arrow_left.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 17px; + height: 16px; +} +.iceSelInpDateMoveNext { + text-decoration: none; + display: inline; + background-color: transparent; + background-image: url( "./css-images/cal_arrow_right.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 17px; + height: 16px; +} + +/* +----------- Data Table Component classes +*/ +.iceDatTbl { /* was iceDataTblOutline */ + background-color: #FFFFFF; + border: 2px solid #0056EA; + margin: 10px; +} + +.iceDatTbl table{ + border-collapse:collapse; +} + +.iceDatTblColHdr, .iceDatTblColHdr1, .iceDatTblColHdr2, .iceDatTblColGrpHdrCol, .iceDatTblFtr { /* was iceTblHeader */ +/*the header of a data tables */ + background-color: #026AFF; + background-image: url( "./css-images/table_col_header.gif" ); + background-position: top; + background-repeat: repeat-x; + font-weight: normal; + text-align: center; + color: #FFFFFF; + border-right: 1px solid #026AFF; + padding-left: 5px; + padding-right: 5px; + padding-top: 4px; + padding-bottom: 4px; + border-top: 1px solid #0056EA; /*border-right:1px solid #CCCCCC;*/ +} + +.iceDatTblColHdr .iceOutTxt, .iceDatTblColHdr1 .iceOutTxt, .iceDatTblColHdr2 .iceOutTxt { + color: #FFFFFF; +} + +.iceDatTblColHdr .iceOutLbl, .iceDatTblColHdr1 iceOutLbl, .iceDatTblColHdr2 .iceOutLbl { + color: #FFFFFF; +} + +/* data tables are rendered with alternating row colors */ +.iceDatTblRow1 { /* was iceTblRow1 */ + background-color: #DEDEDE; +} + +.iceDatTblRow2 { /* was iceTblRow2 */ + background-color: #FFFFFF; +} + +/* set the common attributes for the column classes */ +.iceDatTblCol, .iceDatTblCol1, .iceDatTblCol2{ +/*was column, column1, column2, column3*/ + color: #000000; + padding-left: 5px; + padding-right: 5px; + padding-top: 3px; + padding-bottom: 3px; + border-right: 1px solid #0056EA; + border-bottom: 1px solid #0056EA; +} + +.iceDatTblHdr{} /*was iceTblHeader */ +.iceDatTblFtr { + background: none; + border-top: 1px solid #026AFF; +} + +.iceDatTblScrlSpr{ + background: url( './css-images/table_col_header.gif' ) repeat-x top left; + background-color: #026AFF; + border-top: 1px solid #026AFF; + border-right: 1px solid #026AFF; +} + +.iceDatTblScrlSprFtr{ + border-bottom: 1px solid #026AFF; + border-right: 1px solid #026AFF; +} + +.iceDatTblScrlSprFtr .iceDatTblFtr{ + border-bottom: none; +} + + +.iceDatTblScrlSpr .iceDatTblColHdr1, .iceDatTblScrlSpr .iceDatTblColHdr2 { + border-left-style: none; + border-top-style: none; +} + +.iceDatTblResHdlr { + margin:0px;; + padding:0px; + border-width: 0px; + width:2px; + background-color:transparent; + +} + +.iceDatTblResBor { + margin:0px;; + padding:0px; + width:1px; + background-color: #026AFF; + background-position: bottom; + background-repeat: repeat-x; +} + +.iceDatTblBlkTd { + border-bottom: 1px solid #0056EA; + background-color: #026AFF; +} + +.iceDatTblActvSrtHdr{} +/* +----- for datatable when cell content length exceeds----- +*/ +.iceDatTbl td span.iceOutTxt{ + overflow: hidden; + display: block; + padding: 2px 0px; +} +/* etc */ + +/* +----------- Data Scroller Component classes +*/ +.iceDatPgrScrOut { +/* the class for the outside table */ + background-color: #FFFFFF; + margin: 10px; +} + +.iceDatPgrScrBtn { +/* the cells behind the scroll buttons */ + background-color: #FFFFFF; + padding: 2px; +} + +.iceDatPgrScrBtn .iceCmdLnk-dis { + border-bottom:none; +} + +.iceDatPgrTbl { +/* the container for the pagination*/ + background-color: #CCCCCC; +} + +/* set the common attributes for the pagination numbers */ +.iceDatPgrScrCol a, .iceDatPgrCol a { + text-decoration: none; + font-weight: normal; + background-color: #CCCCCC; + color: #666666; + display: block; + padding-left: 5px; + padding-right: 5px; + padding-top: 2px; + padding-bottom: 2px; + border: 1px solid #CCCCCC; +} + +* html .iceDatPgrCol a { + width: 1%; +} + +/* override the attributes for the currently selected page */ +.iceDatPgrScrCol a { + color: #FFFFFF; + border: 1px solid #2A6CC2; + background-color: #2A6CC2; +} + +* html .iceDatPgrScrCol a { + width: 1%; +} + +/* set the attributes for the mouseover on none-current pages */ +.iceDatPgrCol a:hover { + color: #000000; + border: 1px solid #2A6CC2; +} + + +/* +----------- File Tree Component classes +*/ +.fileTreeOutlineClass { + background-color: #FFFFFF; + border: 2px solid #0056EA; + margin: 10px; +} + +.nodeClass { + background-color: #FFFFFF; + padding-left: 3px; +} + +.footerClass { + border-top: 1px solid #ABABAB; + color: #666666; + padding: 4px; +} + +/* +----------- Tabbed Pane Component classes +*/ + +/* tabOn style classes */ + +.icePnlTbOn { /*was iceTabSetTabOn*/ + +} + +.icePnlTbOn .MidMid td{ + white-space: nowrap; + text-align: center; +} + +.icePnlTbOn .LftTop { + background-color: transparent; + background-image: url( "./css-images/on-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .MidTop { + background-color: transparent; + background-image: url( "./css-images/on-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .RtTop { + background-color: transparent; + background-image: url( "./css-images/on-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .LftMid { + background-color: transparent; + background-image: url( "./css-images/on-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .MidMid { + background-color: transparent; + background-image: url( "./css-images/on-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOn .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + +} + +* html .icePnlTbOn .MidMid a { + width: 1%; +} + +.icePnlTbOn .RtMid { + background-color: transparent; + background-image: url( "./css-images/on-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .LftBtm { + background-color: transparent; + background-image: url( "./css-images/on-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOn .MidBtm { + background-color: transparent; + background-image: url( "./css-images/on-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOn .RtBtm { + background-color: transparent; + background-image: url( "./css-images/on-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tabOff style classes */ + +.icePnlTbOff { /* was iceTabSetTabOff */ + +} + +.icePnlTbOff .MidMid td{ + white-space: nowrap; + text-align: center; +} + +.icePnlTbOff .LftTop { + background-color: transparent; + background-image: url( "./css-images/off-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .MidTop { + background-color: transparent; + background-image: url( "./css-images/off-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .RtTop { + background-color: transparent; + background-image: url( "./css-images/off-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .LftMid { + background-color: transparent; + background-image: url( "./css-images/off-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .MidMid { + background-color: transparent; + background-image: url( "./css-images/off-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOff .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOff .MidMid a { + width: 1%; +} + +.icePnlTbOff .RtMid { + background-color: transparent; + background-image: url( "./css-images/off-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .LftBtm { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOff .MidBtm { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOff .RtBtm { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tabOver style classes */ + +.icePnlTbOver { /* was iceTabSetTabOver*/ + +} + +.icePnlTbOver .MidMid td{ + white-space: nowrap; + text-align: center; +} + +.icePnlTbOver .LftTop { + background-color: transparent; + background-image: url( "./css-images/over-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .MidTop { + background-color: transparent; + background-image: url( "./css-images/over-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .RtTop { + background-color: transparent; + background-image: url( "./css-images/over-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .LftMid { + background-color: transparent; + background-image: url( "./css-images/over-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .MidMid { + background-color: transparent; + background-image: url( "./css-images/over-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOver .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOver .MidMid a { + width: 1%; +} + +.icePnlTbOver .RtMid { + background-color: transparent; + background-image: url( "./css-images/over-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .LftBtm { + background-color: transparent; + background-image: url( "./css-images/over-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOver .MidBtm { + background-color: transparent; + background-image: url( "./css-images/over-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOver .RtBtm { + background-color: transparent; + background-image: url( "./css-images/over-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tabSpacer */ + +.icePnlTbSetSpcr { + width: 100%; + border-bottom: 1px solid #0056EA; +} +.icePnlTbSet { /* was iceTabSet */ + width: 100%; +} + +.icePnlTbSetCntBtm { /*was iceTabSetBottom*/ + padding-top: 10px; + padding-left: 10px; + padding-right: 10px; + padding-bottom: 10px; + border-right: 2px solid #0056EA; + border-top: 2px solid #0056EA; + border-left: 2px solid #0056EA; + background-color: #FFFFFF; +} + +.icePnlTbSetCnt { /* newly added class*/ + padding-top: 10px; + padding-left: 10px; + padding-right: 10px; + padding-bottom: 10px; + border-right: 2px solid #0056EA; + border-bottom: 2px solid #0056EA; + border-left: 2px solid #0056EA; + background-color: #FFFFFF; +} + +/* TABS ON BOTTOM STYLE CLASSES */ +/* tabOn style classes */ + +.icePnlTbOnBtm { /* was iceTabSetTabOnBottom*/ + +} + +.icePnlTbOnBtm .MidMid td{ + white-space: nowrap; + text-align: center; +} + +.icePnlTbOnBtm .LftTop { + background-color: transparent; + background-image: url( "./css-images/tbot-on-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOnBtm .MidTop { + background-color: transparent; + background-image: url( "./css-images/tbot-on-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + border: none; +} + +.icePnlTbOnBtm .RtTop { + background-color: transparent; + background-image: url( "./css-images/tbot-on-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOnBtm .LftMid { + background-color: transparent; + background-image: url( "./css-images/on-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOnBtm .MidMid { + background-color: transparent; + background-image: url( "./css-images/on-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOnBtm .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOnBtm .MidMid a { + width: 1%; +} + +.icePnlTbOnBtm .RtMid { + background-color: transparent; + background-image: url( "./css-images/on-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOnBtm .LftBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-on-left-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOnBtm .MidBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-on-mid-bot.gif" ); + background-repeat: repeat-x; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOnBtm .RtBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-on-right-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +/* tabOff style classes */ + +.icePnlTbOffBtm { /* was iceTabSetTabOffBottom*/ + +} + +.icePnlTbOffBtm .MidMid td{ + white-space: nowrap; + text-align: center; +} + +.icePnlTbOffBtm .LftTop { + background-color: transparent; + background-image: url( "./css-images/tbot-off-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; /*padding-top:5px; */ + border: none; +} + +.icePnlTbOffBtm .MidTop { + background-color: transparent; + background-image: url( "./css-images/tbot-off-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; /*padding-top:5px; */ + border: none; +} + +.icePnlTbOffBtm .RtTop { + background-color: transparent; + background-image: url( "./css-images/tbot-off-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; /*padding-top:5px; */ + border: none; +} + +.icePnlTbOffBtm .LftMid { + background-color: transparent; + background-image: url( "./css-images/off-left-mid.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOffBtm .MidMid { + background-color: transparent; + background-image: url( "./css-images/off-mid-mid.gif" ); + background-repeat: repeat-x; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOffBtm .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOffBtm .MidMid a { + width: 1%; +} + +.icePnlTbOffBtm .RtMid { + background-color: transparent; + background-image: url( "./css-images/off-right-mid.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOffBtm .LftBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-off-left-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOffBtm .MidBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-off-mid-bot.gif" ); + background-repeat: repeat-x; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOffBtm .RtBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-off-right-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +/* tabOver style classes */ + +.icePnlTbOverBtm { /* was iceTabSetTabOverBottom*/ + +} + +.icePnlTbOverBtm .MidMid td{ + white-space: nowrap; + text-align: center; +} + +.icePnlTbOverBtm .LftTop { + background-color: transparent; + background-image: url( "./css-images/tbot-over-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOverBtm .MidTop { + background-color: transparent; + background-image: url( "./css-images/tbot-over-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + border: none; +} + +.icePnlTbOverBtm .RtTop { + background-color: transparent; + background-image: url( "./css-images/tbot-over-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOverBtm .LftMid { + background-color: transparent; + background-image: url( "./css-images/over-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOverBtm .MidMid { + background-color: transparent; + background-image: url( "./css-images/over-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOverBtm .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOverBtm .MidMid a { + width: 1%; +} + +.icePnlTbOverBtm .RtMid { + background-color: transparent; + background-image: url( "./css-images/over-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOverBtm .LftBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-over-left-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOverBtm .MidBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-over-mid-bot.gif" ); + background-repeat: repeat-x; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOverBtm .RtBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-over-right-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +/* tabSpacer */ + +.icePnlTbSetSpcrBtm { /* was iceTabSetTabSpacerBottom*/ + width: 100%; + border-top: 1px solid #0056EA; +} + +/* tabPanel */ + +.icePnlTbSetBtm { + padding-top: 10px; + padding-left: 10px; + padding-right: 10px; + padding-bottom: 10px; + border-right: 2px solid #0056EA; + border-top: 2px solid #0056EA; + border-left: 2px solid #0056EA; + background-color: #FFFFFF; +} + +/* +------------- BorderLayout +*/ +.icePnlBrdrNorth { + font-weight: bold; + height: 80px; + background-color: #FFFFFF; + padding: 5px; + text-align: center; +} + +.icePnlBrdrEast { + width: 10%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.icePnlBrdrWest { + width: 20%; + background-color: #FFFFFF; + vertical-align: top; +} + +.icePnlBrdrCenter { + width: 70%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.icePnlBrdrSouth { + background-color: #FFFFFF; + border-top: 1px solid #FFFFFF; + color: #666666; + padding: 4px; +} +/* +----------- Page Panel Component classes +*/ +.pageHdr { + font-weight: bold; + height: 80px; + background-color: #CDCDCD; + padding: 5px; + text-align: center; +} + +.icePnlBrdrStyle { + background-color: #FFFFFF; + border: 1px solid #ABABAB; + margin: 10px; + width: 97%; +} + +.pageNavigation { + width: 20%; + background-color: #DEDEDE; + padding: 5px; + vertical-align: top; +} + +.pageBody { + width: 80%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.pageFtr { + border-top: 1px solid #ABABAB; + color: #666666; + padding: 4px; +} + +/* +----------- Panel Navigation Component classes +*/ +.navFormOutline { + background-color: #DEDEDE; + margin: 0px auto; + width: 100%; + padding: 0px; +} + +/* set all the common attributes for the nav items */ +.navItem, .navActvItem, .navOpenItem { + color: #333333; + text-decoration: none; + background-color: #D0D4EE; + width: 100%; + border: 1px solid #FFFFFF; + border-bottom: 1px solid #FFFFFF; + padding-top: 3px; + padding-bottom: 3px; + padding-left: 5px; + padding-right: 1px; + display: block; +} + +.navItem:hover, .navActvItem:hover, .navOpenItem:hover { + background-color: #FFFFFF; + color: #000000; + border: 1px solid #2A6CC2; +} + +.navOpenItem { + white-space: nowrap; + text-decoration: none; + font-weight: bold; +} + +.navActvItem { + width: 100%; + background-color: #2A6CC2; + color: #FFFFFF; + background-image: url( ./css-images/cal_arrow_right.gif ); + background-position: center right; + background-repeat: no-repeat; +} + +.navSeparator { + width: 100%; + height: 1px; + padding: 0px; + margin: 0px auto; + background-color: #FFFFFF; + border-bottom: 1px solid #FFFFFF; +} + +/* +----------- Progress Bar Component classes +*/ +.iceOutProg { + margin: 10px; +} + +.iceOutProgBg { + border: 2px solid #0056EA; + width: 300px; + background-color: #D0D4EE; + height: 13px; +} + +.iceOutProgFill { + background-color: #026AFF; + background-position: top left; + background-repeat: repeat-x; + display: block; +} + +.iceOutProgTxt { + color: black; +} + +/* +----------- Autocomplete Component classes +*/ +.iceSelInpTxtTxt { + border: 1px solid #0056EA; + margin: 2px; + padding: 2px; + background-color: #FFFFFF; +} + +.iceSelInpTxtList { + position: absolute; + display: block; + border: 1px solid #0056EA; + +} + +.iceSelInpTxtRow { + display: block; + background-color: #D0D4EE; + color: #333333; + padding: 2px; + padding-left: 10px; + border-bottom: 1px solid #FFFFFF; + position: relative; +} + +.iceSelInpTxtSelRow { + display: block; + background-color: #2A6CC2; + color: #FFFFFF; + padding: 2px; + padding-left: 10px; + border-bottom: 1px solid #FFFFFF; + position: relative; +} + +.iceSelInpTxtSelRow span{ + color: #FFFFFF; +} + +/* +--------------- autoComplete disable class ------ +*/ + +.iceSelInpTxtTxt-dis { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #D0D4EE; + border: 1px dotted #D0D4EE; + cursor: default; +} + +/* +----------- FileUpload Component classes +*/ +.iceInpFile {} +.iceInpFileTxt { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + border: 1px solid #0056EA; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; +} + +.iceInpFileBtn { + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + border: 1px solid #0056EA; + color: #000000; +} + +/* +----------- Data Navigation Bar classes +*/ + +.tablebg { + background-color: #EEF3FB; + border: 1px solid #6392C6; + width: 70%; +} + +.oddRow { + background-color: #FFFFFF; +} + +.evenRow { + background-color: #EEF3FB; +} + +.barCol1 { + width: 40%; + text-align: left; +} + +.barCol2 { + width: 15%; + text-align: left; +} + +.barCol3 { + width: 20%; + text-align: left; +} + +.barCol4 { + width: 15%; + text-align: right; +} + +.barCol5 { + width: 15%; + text-align: left; +} + +/* +----------- TreeView component +*/ + +.iceTreeRow { + white-space: nowrap; +} + +.iceTreeRow a { + text-decoration: none; + color: #000000; + cursor: pointer; + padding: 0px; + vertical-align: middle; +} + +.iceTreeRow a:hover { + background: #B6CAEA; + color: #FFFFFF; +} + +.iceTreeRow img { + border: 0px; + vertical-align: middle; + background-repeat: repeat-y; +} + +.iceTreeRow div { + padding: 0px; +} + +.iceTreeRow a img { +/* vertical-align: top; - Bug in FF, when img has focus it is not highlighted with a box.*/ + background-repeat: repeat-y; + border: 0px; +} + +/* ---------------------New Menu +*/ + +.iceMnuBar { /*no change*/ + padding: 0px; + white-space: nowrap; +} + +.iceMnuBarItem { /* was iceMenu */ + float: left; + padding: 0px; + white-space: nowrap; +} + +.iceMnuBarItem a { /* was iceMenu */ + border-right: 1px solid #FFFFFF; + background-color: #D0D4EE; + height: auto; + padding-left: 10px; + padding-right: 10px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; /* Must be >1.01em to avoid layout artifacts on Macs */ + font-size: 1.1em; + margin: 0px; + width: auto; + float: left; + display: block; + text-decoration: none; +} + +.iceMnuBarItem a:hover { /* was iceMenu */ + background-color: #2A6CC2; + color: #FFFFFF; + border-right: 1px solid #FFFFFF; +} + +.iceMnuBarItem hr, .subiceMenu hr { /* was iceMenu */ + border: none 0; + border-top: 1px solid #999999; + width: 100%; + height: 1px; + margin-top: 3px; + padding: 0px; + text-align: left; +} + +.iceMnuBarSubMenu { /* was iceSubMenu */ + position: absolute; + background-color: #D0D4EE; + width: 160px; + border-top: 1px solid #0056EA; + border-left: 1px solid #0056EA; + border-bottom: 1px solid #0056EA; + border-right: 1px solid #0056EA; + padding: 1px; + height: auto; + display: block; + z-index: 1000; +} + +.iceMnuItm { /* was iceSubMenuRow*/ + padding: 0px; + display: block; + height: auto; +} + +.iceMnuItm a { /* was iceSubMenuRow*/ + color: #333333; + display: block; + text-decoration: none; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; +} + +.iceMnuItm a:hover { /* was iceSubMenuRow*/ + background-color: #2A6CC2; +} + +.iceMnuItm a:hover .iceOutTxt, .iceMnuItm a:hover .iceMnuItmLabel{ + color: #FFFFFF; +} + +.iceMnuItmLabel {} +.iceMnuItmImage{} + +.iceMnuBarItemLabel {} +.iceMnuBarItemImage { + width:0px; +} + +.iceMnuItmImage, .iceMnuBarItemImage{ /* was iceSubMenuRowImage */ + display:inline; + vertical-align: middle; +} + +.iceMnuItmLabel, .iceMnuBarItemLabel { /*was iceSubMenuRowLabel */ + font-family: Arial, Helvetica, sans-serif; + padding-top: 4px; + font-size: 1.0em; + display: inline; + vertical-align: middle; +} + +.iceDatTbl td span.iceMnuItmLabel { + display: inline; + padding: 4px 0 0 0; +} + +.iceMnuBarSubMenuInd, .iceMnuBarVrtSubMenuInd { +/* were iceSubMenuRowSubMenuIndicator */ + padding-top: 3px; + padding-right: 1px; + display:inline; + float:right; +} + +/* classes for the vertical version of the iceMenu*/ +.iceMnuBarVrtItemLabel {} +.iceMnuBarVrtItemImage { + width:5px; +} + +.iceMnuBarVrt { /* was iceMenu_vertical */ + float: left; + padding: 0px; + white-space: nowrap; +} + +.iceMnuBarVrtItem { /* was iceMenu_verticalItem */ + width: 160px; + display: block; +} + +.iceMnuBarVrtItem a { /* was iceMenu_verticalItem */ + background-color: #D0D4EE; + height: auto; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; + font-size: 1.1em; + margin-bottom: 1px; + float: none; + display: block; + text-decoration: none; + border: 0px solid #FFFFFF; + width: 100%; +} + +.iceMnuBarVrtItem a:hover { /* was iceMenu_verticalItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuBarVrtSubMenu { /* was iceSubMenu_vertical*/ + padding: 1px; + width: 160px; + background-color: #D0D4EE; + border: 1px solid #0056EA; + position: absolute; + height: auto; + display: block; + z-index: 1000; +} + +.iceMnuItmVrt a { /* was iceMenu_vertical_subItem */ + background-color: #D0D4EE; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + font-family: Arial, Helvetica, sans-serif; + color: #333333; + font-size: 1.1em; + width: auto; + display: block; + text-decoration: none; + border: 0px; +} + +.iceMnuItmVrt a:hover { /* was iceMenu_vertical_subItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; + border: 0px; +} + +.iceMnuPopVrtItemLabel { + vertical-align: middle; +} +.iceMnuPopVrtItemImage { + width:19px; + vertical-align: middle; +} + +.iceMnuPopVrt { /* was iceMenu_vertical */ + float: left; + white-space: nowrap; + + margin: 0px; + padding: 0px; + border: 0px; + width: 0px; + height: 0px; +} +.iceMnuPopVrtTopSubMenu { + padding: 1px; + width: 160px; + background-color: #D0D4EE; + border: 1px solid #0056EA; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtItem { /* was iceMenu_verticalItem */ + width: 160px; + display: block; +} + +.iceMnuPopVrtItem a { /* was iceMenu_verticalItem */ +/* background-color: #DDDDDD;*/ + height: auto; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; + font-size: 1.1em; + margin-bottom: 1px; + float: none; + display: block; + text-decoration: none; + border: 0px solid #FFFFFF; + /*width: 100%;*/ +} + +.iceMnuPopVrtItem a:hover { /* was iceMenu_verticalItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuPopVrtSubMenu { /* was iceSubMenu_vertical*/ + padding: 1px; + width: 160px; + background-color: #D0D4EE; + border: 1px solid #0056EA; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtSubMenuInd { /* was iceSubMenuDividerVert */ + display:inline; + float:right; + padding-top: 0px; + padding-right: 1px; +} + +/* +----------- PanelPopup & panelTooltip ---------- +*/ + +.icePnlPop, .icePnlTlTip { + color: #666666; + border-right: 2px solid #0056EA; + border-top: 0px solid #0056EA; + border-left: 2px solid #0056EA; + border-bottom: 2px solid #0056EA; + background-color: #D0D4EE; + padding: 0px; + z-index: 1000; +} + +.icePnlPop .icePnlPopBody { + background-color: #D0D4EE; +} + +.icePnlPopHdr, .icePnlTlTipHdr { + background-color: #026AFF; + background-image: url( "./css-images/window_top.gif" ); + background-position: top; + background-repeat: repeat-x; + height: 2em; +} + +.icePnlPopHdr .iceOutTxt, .icePnlTlTipHdr .iceOutTxt { + color:#FFFFFF; + font-size:1.1em; + font-weight:bold; + padding:4px; + text-align:center; + vertical-align:middle; +} + +.icePnlPopBody, .icePnlTlTipBody { + padding: 10px; +} + +.icePnlPopFtr, .icePnlTlTipFtr { + float: right; + height: auto; + background-color: #D0D4EE; +} + +/* + Classes for the output progress bar +*/ + +.iceOutProgIndetActv { + background-color: #EFEFEF; + background-image: url( css-images/in_progress.gif ); + background-position: center; + background-repeat: repeat-x; +} + +.iceOutProgIndetInactv { + background-color: #EFEFEF; + background-image: url( css-images/in_progress_inactive.gif ); + background-position: center; + background-repeat: repeat-x; +} + +/* + Classes for the connection status indicator +*/ + +.iceOutConStat { + margin: 10px; + width: 60px; + height: 25px; + border: none; +} + +.iceOutConStatInactv { + position: absolute; + background-image: url( css-images/connect_idle.gif ); + background-position: top; + background-repeat: no-repeat; + width: 60px; + height: 25px; + +} + +.iceOutConStatActv { + position: absolute; + background-image: url( css-images/connect_active.gif ); + background-position: top; + background-repeat: no-repeat; + width: 60px; + height: 25px; + +} + +.iceOutConStatCaution { + position: absolute; + background-image: url( css-images/connect_caution.gif ); + background-position: top; + background-repeat: no-repeat; + width: 60px; + height: 25px; + +} + +.iceOutConStatDisconnect { + position: absolute; + background-image: url( css-images/connect_disconnected.gif ); + background-position: top; + background-repeat: no-repeat; + width: 60px; + height: 25px; + +} + +/* Royale Disabled styles CSS Document v1.0 mar 31 2006 */ + +.iceCmdBtn-dis { + font-family: Arial, Helvetica, sans-serif; + color: #D0D4EE; + background-color: #FFFFFF; + border: 1px solid #D0D4EE; + margin: 2px; + padding: 2px; +} + +.iceCmdLnk-dis, .iceOutLnk-dis { + color: #D0D4EE; + text-decoration: none; + border-bottom: 1px dotted #D0D4EE; + cursor: default; +} + +.iceOutTxt-dis, .iceOutLbl-dis { + color: #D0D4EE; + text-decoration: none; + border-bottom: 1px dotted #D0D4EE; + cursor: default; +} + +.iceInpTxt-dis, .iceInpSecrt-dis { + font-family: Arial, Helvetica, sans-serif; + color: #D0D4EE; + border: 1px dotted #D0D4EE; + cursor: default; + margin: 2px; + padding: 2px; +} + +.iceInpTxtArea-dis { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #D0D4EE; + border: 1px dotted #D0D4EE; + cursor: default; + margin: 2px; + padding: 2px; +} + +.iceSelMnyCb-dis { + background-color: #D0D4EE; + padding: 2px; + margin: 2px; + cursor: default; + color: #D0D4EE; + border: none; +} + +.iceSelOneMnu-dis, .iceSelMnyLb-dis, .iceSelMnyMnu-dis, .iceSelOneLb-dis { + font-family: Arial, Helvetica, sans-serif; + color: #D0D4EE; + padding: 2px; + font-size: .95em; + cursor: default; + border: none; +} + +.iceSelOneRb-dis { + background-color: #D0D4EE; + padding: 2px; + margin: 2px; + cursor: default; + color: #444444; + border: none; +} + +.iceInpFileTxt-dis { + border: none; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #D0D4EE; + cursor: default; +} + +.iceInpFileBtn-dis { + border: 1px solid #D0D4EE; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #D0D4EE; + cursor: default; +} + +/* submenu disabled style classes */ +.iceSubMenuRowLabel-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; +} + +.iceSubMenuRow-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; + padding: 0px; + display: block; + height: auto; +} + +.iceSubMenuRow-dis a { + color: #333333; + text-decoration: none; + cursor: default; + display: block; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + +} + +.iceSubMenuRow-dis a:hover { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + + +/* panel tabs disabled style classes */ + +.icePnlTbOff { /* was iceTabSetTabOff */ + +} + +.icePnlTbOff .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOff .MidTop-dis { + background-color: #D0D4EE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .LftMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .MidMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOff .MidMid-dis a { + text-decoration: none; + color: #FFFFFF; + cursor: default; +} + +.icePnlTbOff .RtMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .LftBtm-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOff .MidBtm-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOff .RtBtm-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab off */ +.icePnlTbOffBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOffBtm .MidBtm-dis { + background-color: #D0D4EE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .LftMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .MidMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOffBtm .MidMid-dis a { + text-decoration: none; + color: #FFFFFF; + cursor: default; +} + +.icePnlTbOffBtm .RtMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .LftTop-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOffBtm .MidTop-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOffBtm .RtTop-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab on */ +.icePnlTbOnBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOnBtm .MidBtm-dis { + background-color: #D0D4EE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .LftMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .MidMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOnBtm .MidMid-dis a { + text-decoration: none; + color: #FFFFFF; + cursor: default; +} + +.icePnlTbOnBtm .RtMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .LftTop-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOnBtm .MidTop-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOnBtm .RtTop-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/** Disabled style for active tabs */ +.icePnlTbOn .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOn .MidTop-dis { + background-color: #D0D4EE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .LftMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .MidMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOn .MidMid-dis a { + text-decoration: none; + color: #FFFFFF; + cursor: default; +} + +.icePnlTbOn .RtMid-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .LftBtm-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOn .MidBtm-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOn .RtBtm-dis { + background-color: #D0D4EE; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* +data scroller classes disabled styles +*/ +.sclBtnCell-dis { +/* the cells behind the scroll buttons */ + background-color: #FFFFFF; + padding: 2px; +} + +.sclBtnCell-dis img { + cursor: default; +} + +.icePaginatorTbl-dis { +/* the container for the pagination*/ + background-color: #FFFFFF; +} + +/* set the common attributes for the pagination numbers */ +.icePaginatorAtvCol-dis a, .icePaginatorCol-dis a { + text-decoration: none; + font-weight: normal; + background-color: #FFFFFF; + color: #ABABAB; + display: block; + padding-left: 5px; + padding-right: 5px; + border: 1px solid #FFFFFF; + cursor: default; +} + +/* override the attributes for the currently selected page */ +.icePaginatorAtvCol-dis a { + color: #FFFFFF; + /* border:1px solid #2A6CC2; + background-color:#2A6CC2; + */ + cursor: default; +} + +/* set the attributes for the mouseover on none-current pages */ +.icePaginatorCol-dis a:hover { + /* color:#000000; + border:1px solid #2A6CC2;*/ +} + +/* +Disabeld classes for the calendar controls +*/ + +.iceSelInpDate-dis { +/* calendar outline & background color */ + background-color: #D0D4EE; + border: 1px solid #D0D4EE; /* removed margin from calendar outline - better absolute positioning of popup */ +/*margin:10px;*/ +} + +.iceSelInpDateMonthYear-dis { + background-color: #D0D4EE; + /* background-image: url("./css-images/table_col_header.gif"); + background-position:bottom; + background-repeat:repeat-x;*/ + font-weight: normal; + text-align: center; + color: #999999; + padding-left: 1px; + padding-right: 1px; + padding-top: 4px; + padding-bottom: 4px; /*border-right:1px solid #CCCCCC;*/ +} + +.iceSelInpDateMoYrDropdown-dis { + background-color: #D0D4EE; + color: #999999; +} + +.iceSelInpDateMonthYear-dis img { + cursor: default; +} + +.iceSelInpDateWeek-dis { +/* the days of the week row */ + font-weight: normal; + color: #999999; + background-color: #D0D4EE; + text-align: center; + padding-left: 5px; + padding-right: 5px; + border-bottom: 1px solid #ABABAB; +} + +/* set the look for the days of the week backgrounds */ +.iceSelInpDateDay-dis, .iceSelInpDateCur-dis { +/* the background & alignment for the days */ + padding: 3px; + text-align: center; +} + +/* now set the attributes for the numbers for each day of the week */ +.iceSelInpDateDay-dis a { +/* the day text */ + text-decoration: none; + background-color: #D0D4EE; + border: 1px solid #D0D4EE; + color: #ABABAB; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +.iceSelInpDateCur-dis a { + text-decoration: none; + background-color: #ABABAB; + border: 1px solid #ABABAB; + color: #FFFFFF; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +/* +----------- commandSortHeader classes +*/ +.iceCmdSrtHdr { + text-decoration: none; + font-weight: normal; + font-family: Arial, Helvetica, sans-serif; + color: #FFFFFF; +} + +.iceCmdSrtHdr-dis { + color: #999999; + font-family: Arial, Helvetica, sans-serif; + text-decoration: none; + cursor: default; +} + +.iceCmdSrtHdrAsc, .iceCmdSrtHdrDesc{ + background-repeat: no-repeat; + background-position: center; + width:10px; + height:10px; +} +.iceCmdSrtHdrAsc{ + background-image: url('./css-images/column_sort_asc.gif'); +} +.iceCmdSrtHdrDesc{ + background-image: url('./css-images/column_sort_desc.gif'); +} + +.iceCmdSrtHdr td { + white-space:nowrap; + overflow:hidden; +} + +/* IE specific CSS to enlarge clickable area of SortHeader links */ +* html .iceCmdSrtHdr { + height: 1%; +} + +/* +----------- form ---------- +*/ +.iceFrm { + +} + +/* +----------- graphicImage ---------- +*/ +.iceGphImg { + +} + +/* +----------- message ---------- +*/ +.iceMsg { + +} + +.iceMsgFatal { + +} + +.iceMsgError { + +} + +.iceMsgWarn { + +} + +.iceMsgInfo { + +} + +/* +----------- messages ---------- +*/ +.iceMsgs { + +} + +.iceMsgsFatal { + +} + +.iceMsgsError { + +} + +.iceMsgsWarn { + +} + +.iceMsgsInfo { + +} + +/* +----------- panelGrid ---------- +*/ +.icePnlGrd { + +} + +.icePnlGrdHdr { + +} + +.icePnlGrdFtr { + +} + +.icePnlGrdRow1 { + +} + +.icePnlGrdRow2 { + +} + +.icePnlGrdCol1 { + +} + +.icePnlGrdCol2 { + +} + +/* +----------- panelGroup ---------- +*/ +.icePnlGrp { + +} + +/* +----------- outputFormat ---------- +*/ +.iceOutFrmt { + +} + +/* +----------- tree ---------- +*/ +.iceTree { + +} + +.iceTreeRow { + +} + +/* +----------- panelSeries ---------- +*/ +.icePnlSrs { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlPos { + +} + +.icePnlPos-dis { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlStk {} +.icePnlStkRow {} +.icePnlStkCol {} + +/* +----------- panelTab header ---------- +*/ +.icePnlTbSetHdrIconLft { /*was iceTabSetHdrIconLeft*/ + width: 14px; + height: 13px; + +} + +.icePnlTbSetHdrIconRt { /* was iceTabSetHdrIconRight*/ + width: 14px; + height: 13px; +} + +.icePnlTbSetHdrLbl { /* was iceTabSetHdrLabel*/ + padding-top: 2px; + padding-bottom: 2px; + white-space: nowrap; +} + + +/* +----------- Table Row Selection -------- +*/ +.iceRowSelSelected { + background-color: #316AC5; +} +.iceRowSelSelected span { + color: #FFFFFF; +} + +.iceRowSelSelectedMouseOver { + background-color: #0D4092; +} + +.iceRowSelSelectedMouseOver span { + color: #FFFFFF; +} + + +.iceRowSelMouseOver { + background-color: #B2CDF9; +} + +.iceRowSelMouseOver span{ + color: #000000; +} + +/* +----------- outputChart -------- +*/ + +.iceOutChrt { + +} + +/* +----------- Panel Collapsible -------- +*/ + +/* opened accordion styles */ +.icePnlClpsbl, .icePnlClpsblHdr, .icePnlClpsblCnt { +} + +/* Closed */ +.icePnlClpsblColpsd, .icePnlClpsblColpsdHdr, .icePnlClpsblColpsdCnt { +} + +/* Open and disabled */ +.icePnlClpsbl-dis, .icePnlClpsblHdr-dis, .icePnlClpsblCnt-dis { +} + +/* Closed and disabled */ +.icePnlClpsblColpsd-dis, .icePnlClpsblColpsdHdr-dis, .icePnlClpsblColpsdCnt-dis{ +} + +/* common accordion headers */ +.icePnlClpsblHdr, .icePnlClpsblColpsdHdr { + background-color: #EFEFEF; + background-image: url( "./css-images/table_col_header.gif" ); + background-position: bottom; + background-repeat: repeat-x; + font-weight: bold; + text-align: left; + color: #FFF; + border: 1px solid #CCCCCC; + border-bottom: none; + padding-left: 2px; + padding-right: 5px; + padding-top: 4px; + padding-bottom: 4px; + cursor: pointer; +} + +.icePnlClpsblHdr .iceOutTxt, .icePnlClpsblColpsdHdr .iceOutTxt { + color:#FFF; +} + +.icePnlClpsblCnt, .icePnlClpsblColpsdCnt, +.icePnlClpsblColpsdCnt-dis, .icePnlClpsblCnt-dis { + background-color: #EFEFEF; + border: 1px solid #CCCCCC; + border-top: none; + padding-left: 5px; + padding-right: 5px; + color: #000; +} + +.icePnlClpsblHdr-dis, .icePnlClpsblColpsdHdr-dis { + background: #EFEFEF url( './css-images/table_col_header_dis.gif' ) repeat-x bottom; + font-weight: bold; + text-align: left; + color: #CCC; + border: 1px solid #CCCCCC; + border-bottom: none; + padding-left: 2px; + padding-right: 5px; + padding-top: 4px; + padding-bottom: 4px; + cursor: default; +} + +.icePnlClpsblHdr-dis .iceOutTxt, .icePnlClpsblColpsdHdr-dis .iceOutTxt { + color: #CCC; +} + +.icePnlClpsblColpsdCnt-dis, .icePnlClpsblCnt-dis, +.icePnlClpsblColpsdCnt-dis .iceOutTxt, .icePnlClpsblCnt-dis .iceOutTxt { + color: #999; +} + +.iceGmp{ + border-collapse:collapse; + border-spacing:0px; + padding:0px; +} + +.iceGmpMapTd { + vertical-align: top; +} + +.iceGmpMapTd div.gmap{ + width:300px; + height:300px; +} + +.iceInpRchTxt { + width:100%; +} + +/* panel divider */ +.icePnlDvr, .icePnlDvrHor { + width:300px; + height:300px; +} + +.icePnlDvrCnt, .icePnlDvrHorCnt { + border: 1px solid #ABABAB; + /*width:100%; */ + height:100%; +} + +.icePnlDvrFst, .icePnlDvrSnd{ + height:100%; + display:block; + float:left; + overflow:auto; +} + +.icePnlDvrSpt { + width:2px; + height:100%; + display:inline; + background-color: #EFEFEF; + border-left: 1px solid #ABABAB; + border-right: 1px solid #ABABAB; + float:left; + cursor: e-resize; +} + +.icePnlDvrHorFst, .icePnlDvrHorSnd{ + width:100%; + display:block; + overflow:auto; + display:block; +} + +.icePnlDvrHorSpt { + width:100%; + height:2px; + background-color: #EFEFEF; + border-top: 1px solid #ABABAB; + border-bottom: 1px solid #ABABAB; + cursor: n-resize; +} + +/* +----------- PanelConfirmation ---------- +*/ + +.icePnlCnf { + border-top: 0px solid #0056EA; + border-right: 2px solid #0056EA; + border-left: 2px solid #0056EA; + border-bottom: 2px solid #0056EA; + background-color: #D0D4EE; + padding: 0; + width: 300px; + z-index: 1000; + color: #666666; + font-family: Arial, Helvetica, sans-serif; +} + +.icePnlCnfHdr { + background-color: #026AFF; + background-image: url( "./css-images/window_top.gif" ); + background-position: top; + background-repeat: repeat-x; + height: auto; + color: #FFFFFF; + font-size: 1em; + font-weight: bold; + padding: 4px; + text-align: left; + vertical-align: middle; +} + +.icePnlCnfBody { + padding: 10px 10px 5px 10px; + background-color: #D0D4EE; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns { + padding: 5px 10px 10px 10px; + background-color: #D0D4EE; + text-align: center; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns input { + background-color: #DEDEDE; + border: 1px solid #0056EA; + margin: 0 20px 0 20px; + color: #000000; + font-family: Arial, Helvetica, sans-serif; +} diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/add.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..03ce08b5123c4195fa38b2075b216aeb9e8f50f0 GIT binary patch literal 134 zcmZ?wbhEHbrHO zV3birT@-^tXH;7h)I}~wSnEZ1UUpu8`|X_L=F7J8JHO^X(N)jI_v-WT@cn*ywl!_t zSbM0Hun|+8L<-{!#t|ti*cS-u7!L%3EYN-aU{urw0$&lvp)dn990ht5peVpRG-!ZA zKNtogF>VM77UG7a8kD5dz!;?k1|XQg9MB~d3(#PJ0W?EY5D$^0AXzbd{$WtkV$FGNPrFs9*{h>x}^7%sp{tz3_E@mPC2?`qY z4+$XQ^AAOYsi+|Fu~bZ%lHr6lg@KAGarzG}P^|bX!m}Kpq>MT~8IFi7$Ouq}37wB; zEnr4UX%m^rX&sIuUQW=mF3OOLWkzWpDjLnnBFv2Z=6I;bG^`}Ee45J!64Sr^WJQn| z<5RMlj*9U?e{f7pNBGHazgSL6aPs&VBgPYkHi20=MN4Un4GAWr5GxZ|n${Js}H;@={f4UYdU50(aV=#@yxBUP@f9h772?ZqYKD?5&n_ls7<_Fl8O2-i|eSzXtk4S_Dx`RbOZt?wIbIkQWg!)k5P zX?0f@b)P=+@=9TWgY{I{`!D~T`)2d1j#|%y!V2#_2N|&3EY0s;e95$(Bu3gBJl&p3 zOU}BIm0yU<4#yvbn_M-y?T1sEJFjql)nQNl zg`5KMVDScXO}^b?qA0g*>vUgnQStcZg(t(UAI$S=sE5|_bDv4;nH^fQgQ)up4t?^m literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-ff.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-ff.gif new file mode 100644 index 0000000000000000000000000000000000000000..441e0980065ae3c953ae4bc881daa181c80d04df GIT binary patch literal 1166 zcmds$`%ha19K~;;)W#Hp6Q<5dm?MKIDj0N-88gT>U{XeBT$Tl;ompbsO#Few#hBRe z7>{BUGUAIaYzpZ}Dg{dEi_-Seckk^krKLdYE`u#h_5ezI+uq*$mHiu@AJ0$cb52f8 z-KmO7$;(I%LK%=aK)s}$0*C<^?U6A@>?yz&z{iqn4dM;}5K7tsSeaZi;iPm}LN++P z4PXzXT}#Xqo>t?uP|`6MWQ{m$#F7?2;|?(@Zwe2CngEqErp2REo)o%}?2%88Ib%9k zR6`_%;x@~C+T=@4&(l~K%tVqPVU|eOi)C6Yp>@SQ4=|&X zC<{QWgULyHmg(DSbX0BW|5G0z85@4@Z|jbB);r@%paIqzgmIm1%=}QPvB~6Go0~8Z z$ur{i33puYi7(yVm~h1t0CU)?(z5OUhaR1@-WoG|mgp&yhaeM9VmfwQ%0Q9dv*<8%I1#|!LZUEMg5f9e;-@f zE1C5y@8~f~?~NI-geAbY$VO6_=h zC-iUMP5rEI*B1di%ouzLvxoGC!AO8m+}$hJ+81d&0--fnxeqFI6ZMjoJKF}F!d4g^ z#%QqAto!c#DoofOhabdljM;$&wP%kTkpGbmCAk~~F(4(+n4WzC;REvR>y@piq2@ML)y`T5l|UH6*m)_QW4#oX$i!kmZaMn2P#q~y}@NyQ6qwdeGSxFhwy zUns$f{}T5NetP+$uB^YXi=SW8b>QRy1<_mjJU{SN-OY+FT_gTLkh|i(c0aP%F_*PipE1nTO)Zb z@)yYyoc*7)yz_PCKta_@NAfeue|S>mKe7)QDQ-Nx`4g{fa9{YcNOF9Q6%9@ z^Ld|hFDcgBe8uN0s&^Bjq2nwg550lp2^#xr1ZCG7TeCl?AkEJ)d1OJm@;Jx*nxQ1O uipx7lN;-KhSCKB>6|LihLA~lI5)Wl?xY^~>IsUu$iZAlC^|?97vHt)cwOH8z literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-first-dis.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-first-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..33e4ea8c7d1fa7f8e8f8bc31e39df15667b31b13 GIT binary patch literal 727 zcmXw$X-E`d9EV38cehp7tf({%GcyS(i!M7TwalW!BFZ4TC@L{13%d5h8lCo~h`@@X zn;=mGsV$1p?1VCpBC~RKc6N?;W@l#)ubr89{^^H)A0M7i&u`W0l7$7kClI3v-buKd z+oAwEfS`gHz$j<}fC1o@F^zONWctLAPc}Nby%<1Laj&R(B~1*NEYdwl|H}v+KfNAt z$b$?y1d?iU3U*W9c*SI8gIBN;0gt4!vhI^HE9snUxSPLqbhA)DCqV@w)`Xr_Q zCH0l&2mE39%kU@&UB6gP#?M>Y*#IzpEXol%2wtT1(7dQZuUAAWunOi-WY}Y5?2&Od zE&gGI7gQT7MU{xb`3(j|yLwnr(OF3Y7_Jfc@tafB(7=$v%79dpkqq7+rG-I;lY03m zgNBqa4u%K(>Y$tIppoViP^cfIpvFnzP`}P8!*zl9zbR2Nh9I0o-Ut}^gs_6k>2O%j z#l~7M)Lgo3bvi8vs*V;HtHodm)-tud2V`>VVpK4R4erU+c*j_dJS$6ft2RZb^ zX#4Kg^E>C?d_|T$a-4lSnyj2%w)cx|+O#$487*h3w~;e8Z!bUXxmZ2^@Z6lWrB}0x z$i!@4&wE$Pfm`Ea{{#!h-ECxAFDCsy`EGj6jqK^`%NyJ8hHE}wpHydiz-`PV7XJfZ CHOoK% literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-first.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-first.gif new file mode 100644 index 0000000000000000000000000000000000000000..b1b021c64460b0d594ab1161a1c876f3c9bdb33e GIT binary patch literal 1161 zcmd^8|4$PK9KA9awRV9F6t>`2Gex5$+Y;y4mMx`guo${QjD{$aHbXP_6F->jrzHm# zCSS6NW68c)QgoZhQd%jrrBJxGT)$lJuJj97p=eQXOveT-ZI2$;&+6Z?_xpP<@4dVe zHPw~xDNB$-B&9{a>@&7Q=Rf7>ya*#s?4&{c!!3Ws*)!`?h-2W-0>az&0LC zSiBp{y61;OnFAn1xCOAFw7*R{!dd!9F&d)?t6ygWLojs#Ubp z5$=cIrpBhc{wOnKaAW{{4`4h5lXP0|c&4>&;)H+L9;-jE@-DCw6hlV9w*+@a9gfh> zU5aJ0ZO}}=&S~~+)i+(asl(_95W!X3?B?PsOwbJGXRUNP`~*I2QfZC2&Xq6_DI=LS z6UlKp;|g;_qc*vsU9M2sg6!IQD)J;@_Qw445xqMxb1&N~c*4-FHd}q^+3?c|GP?t3 z4{_Auj(-L8WcrT5VfC@$$FTGatUji9z=F@ilsif;z=Yj3O+36ij(ZnklN4hi69(sc z&F5YBAFg5EsKuMaf~&3YCxlhpQffRQ)#n5W6WGR#oR?yLs@^1sCX?OYy$ zXpxHN>7RcB;RAB6vvB|KVqQ+JpsZ4i4oEukg~l&&^t(eJUuqa@IQTSp@Z>H@SFQfn zf}3aBG~%wx>AQr z{3uVFKijBB=1%i+#9zx2VydtFoJcGZD9g)+zYVp0xW)Uv@72$aTr&Us4%(kr-Pn^R zF34Idg_nf^eaTUjcQ#fLE+Q~Q|3-CTWlSv72=-tv?@^$Gou_1&KvdNxzLozGitc?0 z?Q0Djs;&E}Xy7YVPJL-}Z?CK~zd-6}Hd8Co+b_-z6fyQ_m-_fC?_U-XhhOMf+}-l` z#cSg8Ijyf3TxZ^1Etm3z8-ElBW-bc%eNuIN?M?Jg+wRxOS~P6}5!zCwDlF#Z?QOVb7aTP*kA%&&#f8WR F{{jB-G$H^1 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-fr-dis.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-fr-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..5db99bfa030437197f51d015d3fee7c84ee859a5 GIT binary patch literal 1135 zcmeH`%S%*Y7{?Bb~eOIDuJpMUn49`NjRadkT;V-tPu{T#F)io{4lL8t%k)_87Z-Z zg;c`h%zh%EC8!d0nTRMMM0Eisl!U>fR78TZq9cujr8TIU^I=h0G9z+~!6s6zMNST5 zb2Vu&a+1a70xSJyMGmF~Y%oygQCh}{u#`s13X3gmg+OIlQRAVoEJO_!8BukO7ckP& zbMw3yP4Sq_{p48zLCqq>l44eTMgRUwh$v)HOfkHSG>e5vNj0HH7Ugs%aPVLME`e<+ z2L*r^)ct+oZzn(w0aSI1XPEI)*#)(2V?p3_XN@kO**n$txP0FOy45%QyxGwi4c;8- zof_EVZn$=tnaK4%s;9oS&Q(u7v0b_ts;?C6cMk99=>v4hM~cq9QF5WUL0DII)#kWX z)QL8foU5$zbTaqtg-4!s4c1a(2o$$(aSggpQdMN|ct{?h5dA{*hUfIsGuI>uIwXyI}$4Afy`UXKx%?RVm-4mys d9ScS4^6EX_Nn7bd&$ine2AS;g!Yl_k_y-v+;NbuO literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-fr.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-fr.gif new file mode 100644 index 0000000000000000000000000000000000000000..b7cc1cb5f52935ad2aaca881b0fedcdfc4c23970 GIT binary patch literal 1162 zcmds$`%hB`9K~;;V8__xvEXFN7~+DPOVp6a;W?LR)C*gTA=5z3shlDUY^LDGCH1AT6}L+}qpl;NRH!15VB-=bX=q z&lP-FegH{9B3fj8h7pw4st6_w5CI4QYy!Ll(2e^5Ku|6Qh&8sU8rz3;1T7Fs1mzMH zwiN&{x!Cd9=&+NPwyShFr6TC5B~aV91;TnQLAh7Kxd0kxL{Bm_z{Dev*+M#k(%_-u z3aNgAQQJdC7bCYt3?#$sxiN+*YGfKrGq3~T@Y3e#SZUdv(yzrA%EW3cte)D@PtYnX zR3fY$n%qqy76@w_J5++QCLIyeI713+U})5#MW=^|=%o9ZWjZ=)^IPWVf6YPPa~QCP zjSj#230Rzdnek~10Q0a8cdS=oX>3;y;>>{Mxf-YX$G7C@y386fk~@ZpZE_hFRzpqg zY8?@A&ciTHkKpVG5!2!^a&`gp(!6JqhMn&^R{jZs<1!ecR?EdDe{uRUlB*xo#U&g~%Kqq=vsd{W zzLvyqb1oh=r4_VRmeg=6_Hom(V`olRciZbZzouP(uc8v=ru>$XaKpHCn7a~aI(PG6 z^Ubq&3#$(m*s4YG4N1YL^RlXaWJcV*@>u@0HZV_~iUace7CPd8#nKBS5ybKl1(zCO(bN%mZJI>p-bI!jLd=KBl#}B^mJ6V3haIiKJYyp%B zSVkrT2!#-$y@>V67^_$W1zALh@klO4kPvc0$-dx(0%E+9gAF-Yk@3j(dFK*NFEc^f zBlCXbU^a0@Y=HG40*ahhrg+H(MT>QcQOI7|GBRafAaE#6FF0{dbaFw03-POH$U14U zP7-X8P{>>e<3t+z2^ivhL6R3;G)wWagJ93it?bDMFMAo9KS}o zLj;taY>?vo7$=c#iT4T&$CKR359_3`ff(pt#3&Mq4o;~M^sXWjN*1e~_8^j%gf-+_ zS$9FDuZQp;f`khg!}~=i8=!d^CpnB-Uv@IWS_p&EG8Mq+AVzO+KFI;4zc`JM>=uy6 zFMHPzzao*WA7e$F-5jz`FnoyRSJyX1+%0_{orXT-_HK}Fk#Z}mBLF~pKotgn31llC z{Qm@KP^(F&(>@Ik*FNuf*{L;|)c2~IkKa9=mseWR6xGukRbAK6eYx_&jl@R1e*4b! ztsg%Rw3O(|)cbFqy`|BB=;2`iMk7-5b>-?iiHRE3gN#$rsyW-7Dk5T!?vnbEUQ-`? zF)hOy8*5`@7gKeG>SF!F9jf~UX|~z<53_x%Zx*ifg~c4r)f@5~O55XhKkG4snKMsS zy+3mzTBxyAgdd9hnbem4;rgqns(sq3tH#QX>~p=l%4!md6JoYebyc0_oc0v;f%7d* zcweb5A!}!eq1rfbreLq?iEuls6}P>JPyHf{cf}_cm36<(HMd=hf1Oj9EA;>BH-e&n DM&8S@ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-last.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-last.gif new file mode 100644 index 0000000000000000000000000000000000000000..cc24719460f1f0c042400eff9dd55e23c7efa5cd GIT binary patch literal 1162 zcmd^;>rY#C0ESP?WnBf=3T}wZFh_7MbCN~pj7kc|Q4Dou(`nR5JG?Z+59$~FpoXrO zY|xl(aq$v5JBQ0?QhKF@Qs`;RX-`j2TiQ}qN|A$O3!;odX-_Yl{)E57=lh#C&zrn$ z?Wa$@EIa_QAW{SIgi`MuH8oqz0N|geNC46R*xU>5Xki@yo=}zqySVQbv}oEAC;(7& zN4K?}w8ow4SDFndxdA}`fW_d=U@=OErVYrNH(m@RfDt1NSjOnt*vaGpu;Qd^W;?gj zk^nq`oF|kcv!MTmMTcfay=hO3>Qh=m1TbT%F>gw3a-8XsTD&PsAaC_$kicJA0Alxm z3Ed1X03AkNy=fgsW^}H9%%0?^9gh;!kkMtw7H$3?2mzNarkY;etVDx45$K?~WX0@~n4$Bt=8ZlPJ-z9M$3Z&Mt{FLJfPiru<8j zpf%;E{4h5xqV z>1(&FCig?0;L`kkpfm@H;tFCc8CP?08A1+@OtGe5z40?~~{XtGOoyN6)PbGyg zi&4M*?S568_~H``bg*UBQ6gWgVZLyI-=jGA{CE7h(@m=t`vz<4xIZ<+YzcpWt7J-4 zkI;{Q`ZoKs*1Rk%O;wfGi@y-Pb@iDcR{eYW3qdyP-R5WGANNQA{RF3e59^qY^?F4U z%x@{Hrnj+l8|xAL^& La>t2I4)n@@WG5`` literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-next-dis.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrow-next-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..b90bbf95801cb6c17d5346b380487254e1ab4161 GIT binary patch literal 1082 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 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrowAsc.jpg b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrowAsc.jpg new file mode 100644 index 0000000000000000000000000000000000000000..06bef97d64ba39409a298028d0e4c940277c9a91 GIT binary patch literal 676 zcmex=^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<W=16jCP7AKLB{__7~~lk7+Ha?1vwZB7@3$^SlQS)IJvli z3bqO`FflSSGqEtUva+xMRo4RL8CV2ag%k}P*@OcV*_8@Kj2b5{ECr+Na zbot8FYu9hwy!G(W<0ns_J%91?)yGetzkL1n{m0K=Ab&A3Fhjfr_ZgbM1cClyVqsxs zVF&q(k*OSrnFU!`6%E;h90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3pmLCuwqfN*_DNBt7Xfk5wKN?e7n$ hX9&HKnDI_8MI|YmXUDey%ReiY&DyrY*Y5fMn*bYE<+1<( literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrowDesc.jpg b/Music_List/WebRoot/xmlhttp/css/xp/css-images/arrowDesc.jpg new file mode 100644 index 0000000000000000000000000000000000000000..afe3326249d1f858a202083bba539f176a0b6979 GIT binary patch literal 675 zcmex=^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<ECr+Na zbot8FYu9hwy!G(W<0ns_J%91?)yGetzkL1n{m0K=Ab&A3Fhjfr_ZgbM1cClyVqsxs zVF&q(k*OSrnFU!`6%E;h90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA36(Wur_xIdViL?szIU7#@$?Q?jVR{{Kw?4j|&w literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_arrow_left.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_arrow_left.gif new file mode 100644 index 0000000000000000000000000000000000000000..916b588cc09b16de73d776765869d675b00bfb04 GIT binary patch literal 1105 zcmds0>rYz+9KC(4uq}0EX32t6%iISvi&K1L%3_9yLbS?bF=&=i)F>uq&TmscSY~-- z1vAJ@)L7E7u{gF-N((K0&Z83rLzK&A$bRq2gm^^I(q;hyCo=P03HDRvu&z zZW^#c_%3)OSu6>rP?1O#@#Ln-f8UDdr{{2YD1*lN#5xRLw%UEmdXlpcS$~Y5rAqTe zS~FtSqj@{UlS|-=@_48cNai!c}F79s^KvSuZ?mQ(6+lY8irb;7gh z2r^ibo$zJNf$Stz^eu7@daH-5JHiE)_yzLLgg=MHd4;lnAr6+nLr0Lad83nP?l+^y zOf#wVtT9xyQ=C4K4<-ImD0|3d-bONXEM-FPJA)7Pu0O|(^Ug4{w6fu(xe>k373HrP z=dYROZ61GU6%0Y%MloLMca7FEptUT-N>(CgBUweqK;kag$XwIM=baJeyw)6AfsMcO zPHbgV@0unG7AFC~&qjf~1=terpgBt*I~B;?bZ5v^(MS~(O7(jkY73ULlG*t<>%!Ak z`~jY1Beyv;!Q+Y2@;z|U1!k)pG;IoQO#qPp1*!^S0fIP?!`o@LKY^43@@+%EZa1Pr z1c*#7Q>omi9FnuIM*SL1to0)Ml{(xf`RtImQZC+k z^~393KU;^d;(aGo{f(~YU1fvs)_pNuAy0>&sAxq$8I_N#hNRzNH_mu3{xEjrp!~#W z=p$Trpe=3MD=Ulj?5?Ug+>Rh#)d%gTyE9LzNa>^dYSitnL&$)zcD1@|SYB6FUvpMK zw^f}`HSD-i-KvwnFO)vsXqZygH9Uj#NCsN!y`pm23omw6UJ^;mY6bhH&1>SJzP6Ju z@7&-02fg=^Plc(ck8g-Y5^4MKa~H;T?Ro87BU0X`^Iv#Lzpi`sm*)hc-s&$KkM3%| p5`SGJksbKy$ddvgGbqmq_tg(vY1(rvtr9h#8GhrSY=;=B{SOq=Ke+$^ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_arrow_left_dis.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_arrow_left_dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..4313aad0e991f77af6fb0ee30880194b481563d9 GIT binary patch literal 967 zcmds0Nlz027#$)eTvS|6Mh_4V95h~xaU(IoV2Ct^3nqp@i5jDcH)B*16Jo0dyeM)~ z8WBtYg|>8==|=Z*uNDCKs-Ut3unF*c$JB&UvW+e}8POFL2S==f?@%WrhyW4*O8hAUSZQ&V5m82* z#Y-qHt9qYB7r=m*RO)A5PVpsVZxS#@b}%v)FB^mFxm7?J2_v_stwHJwm`Nd=lAN?) zv;}c?g)InECg1SKIZI4zS8L--z!o4`P&}LzBv>jBCKk;2wvi~umm$dUL=Ma`naay# zZrdE*u#+Xr9O;d1;b|rF4PKAgouPR>EnyTNPAN8~;-?COI#iFBoQy(e!I!95DA5$& z>gahI$$*s-p;9Hx#iamOCb(5QC3SRbrp(?~qxKo!wks+SIdLY$qY>V~$f2aogo6D|^IMWucbNCOu6>xxQ_V8VbGCrmz+74qMBQ%rU;l0H(3WqzvET6$h_ z&;pyvoAC{I^snCYW6I=r$A#?Tnwyn$`j97~Oq%?YX1~K1j;(+(syG-S$b20f!CsDF zfmFp#6&Uo)21_xbiyD{MAgnwg_v#N^WBDgWhAI%9xu1P;3dHzW|X{T&#pe z_}NHt+Pg*PWfN0YsWn%7G#F8|)4V?|ddPyE+$3`%w;wIjm*&QBxniN65RC9mClS>tOVst7Ogm)$Z%MUvW97c z_x`xv6-oVVb$R`>B}<6a1*qxpri}#clp9Nw066n>NGj{IB)HkdyF?mvfxHc;>^ODq zieud1qycP1al*Ndr@>7u>HK+TlpWK%>|uH`SX6s+la8SG24nDTxRZ=j)<1t69Av>6 zSr5c+2j@1Xa8Bo5eOsn9k_AgJKcYs-TQFgCdsCbxl)GxcY@P+r4Mv0gb3yGfh8Sm} zbXAW*sa&;L}%E5iv|_KuEw!1cAt>;RkgOtQA7|>w4LP(WGJdU^-%3=$2+%HA)~zK zpM36P%?Po4plSbR_Y;b|R;(@V f?2LR+g&21K$hv=TFobb|E_v z2}AM#68xhi0;~Zv8roL@LMb&msr>?IFg*F3F6j*Im-NP1M)O2-rZ+B2L=5s;0l?Jf zQ~+!d38f`3yCE}wzCQC4E;V(MF%Bb>0bZuFaHXkjgi(C)f`gJVT1w1A zVh)BvIaf4?QmdRGlW7=XRh0T2ohq3JP>hu#=_1C+DM2H635&~)@UKBTKAu^|@Njgp zgwm=lCi&yPy&Q~qNFr4N(A<7nr*A`3+T`pKn+01e?`5PhMtc3hH|Pk;0A98@6kKDn zK(b$L(R?tWezfCbae0&~TEgO}j|xvHj>tNhR&;vf^f&Nvh2Z#FjQ>VWt$P^FMy_1e zw>!B4O6A{M0^9-&ImvKFLuv7ogYbrCLKBLW_|b0(IcX)BDt)pOP}->4ZH?xsDaFm^ zHe9}XhvI2?+UG(UX=z1rGcv}M0-VB3YyQ|QK?_7u^|BJliw+I~l;Dd9gLdLspZha2 zXQhkr8SrzelPLzc0yC{<=7ImBxOs)mYV;IXBYA5?^l?Q~zsr?Ss7WQeDB`?2#%@ds z$bUp-Ve=*g!H^?=GyVMpQr?fW)|+p?dmC&kYhBrm2xg*V$Gw~QxwqW#`R?+XYsjvB z!$-R}w|H9y_CIehpFMd%cxh_rsJeVNc+fV#y}RmIpJTOb{_%@y&r-5ZXkcEQxmCN| zyQewPV}5qA{Xy5(=RGyOwYtHsE!BIklr>fyu35Z(!{D#2czC~=8>m`o5tol27`|C{ bdMRZZ#~Y29@6nw~qje6y>N~Wp969v|@{bh( literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_button.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_button.gif new file mode 100644 index 0000000000000000000000000000000000000000..385dc26d0e2b945d8d1baa034d2ddb8be08911ff GIT binary patch literal 119 zcmZ?wbhEHb6krfwSj5f%1T$yO{Qv)dTG~uwhO{#b47+#l267dDvM@3*urug@RDjev zFxyn@y2I_%BH=Z&q4D7E^ZcqzY(E$>R?T8p>D1?DDUn^_x9@(+G TQzUp|nxC`h=0hLLI2o(~lg}(7 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_off.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/cal_off.gif new file mode 100644 index 0000000000000000000000000000000000000000..42ca20dde834def2684dca59eedde888e1ac21ef GIT binary patch literal 594 zcmZ?wbhEHb6krfwc*el+|Nnn)AKx=)&M*W&WQzaAkocP+^eIEgLx$i-3_%YWqQ5aD z{$d7-2R~ql_{b3Pfg$u2L)dGE&}TMLlUA=@!w~vJFyX0v+%$&ZCsq-C_OX*x^WQQA zJ#mPe>JUFoAmNpL{0y6@evYWu0`af7qMr)HKD3USz!dU~A?y`H=xe9MnQT$77=oTU zCC#>pn!pwPge&nYSKLRT_=gr@z4kGam_nXgNA^1;%+$=f!4dn>BCJQV;00U!H=%^b zY8h8-qbAx!PZ5fH?hrqnVQ2!ypDbX9>wrj5oG`GjZ(wR_ZfO-^;$Uaz=4%yVT-uj7OnS_ z`1n2H%=a5!vQ La&mGb1A{dH;OmZ8 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/column_sort_asc.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/column_sort_asc.gif new file mode 100644 index 0000000000000000000000000000000000000000..cb2d88286ab7dcfecdf5c7a9ced1ee033f5c6578 GIT binary patch literal 152 zcmZ?wbhEHb23xhQP9eOuS literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/column_sort_desc.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/column_sort_desc.gif new file mode 100644 index 0000000000000000000000000000000000000000..ad5ef7288b0d2d0e04be2df44214a6a0f014dfbc GIT binary patch literal 152 zcmZ?wbhEHb#A5K-xKnIzS9)~u8`@F^N4AuY))is^~ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/connect_active.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/connect_active.gif new file mode 100644 index 0000000000000000000000000000000000000000..587b66cfe649a24f1066ae560df25b6005a3bc5d GIT binary patch literal 2410 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 CdSIFW literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/connect_idle.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/connect_idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..a0dded32016445c98bcd3f4bb41e8f29bd51b027 GIT binary patch literal 169 zcmZ?wbhEHblw^=(Si}GV|NsBLdi~0kYnLxwxp?Z#$>S%F0YwylvM@3*urug@RDjev zFy~e5y7SLVLV4a2gK0r?Z^WwgUAz)|qp+3BaHevWz}cunT7HXi)T9NSo-YmN?6c+g zBoR5O$D?h{g*PG{o~N~c#}w%*-fLQU_gTWGoLz0bKd0ng{AJMbyMy^@be(BIR&Bjp TZc?#aVw$hNuTwlbCxbNrhB!&< literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/folder.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/folder.gif new file mode 100644 index 0000000000000000000000000000000000000000..1ec37aca48ffe448dc193c61a3a9f03ce46e7af7 GIT binary patch literal 595 zcmdT>O;6Kc9RIi7>^7JbhM6D)1|n|~@ijw0p$9rh7-w&Ak#K?W3HooSh(^I<}7aqHh;qUy*@737cC@<}4put}q5D@@`5QG?X??Ls$iRziB>1Bao#WyDXoOO6-Tusf70TAMCmG(45-8XZussepngT&e)IO7Lr8fU z?f|tPb<2My|N~u_+H8YP;^Qw53kGezo}L=PB%GKP`MH&#Zwmu(AaQ?&KH4ktJCE2iJ_J A82|tP literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/images.jpeg b/Music_List/WebRoot/xmlhttp/css/xp/css-images/images.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..b4318a17a115bf72c12355133a1ed7c0a4518a98 GIT binary patch literal 422 zcmex=^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<>8HAM_8-XfB5K>STOdtaVF$`oBRQ!L7fd^<0lOVGogFVAd8KX*>nmtp0 z&lKI1?WXmK&+Zv}q@ zw2ri`ICIbNQ(RE6$ZlbcNoUH;G8bj%rgJaII+MLwQ>c2q=D~xrBH!09G0@S>^2y?C Wcpq{9gYX3l-41Ms5thG#35)1(yCTb)T`~Z1g&F9L=LL;(&(7h zOye}GGiH~l>0wNV36&Bh5p8Kys7`fuwrkXGTkVd;?8V;9#oq7#=DB*Fi|^<652J^Y zeN(LwR){wU#M;`Lw-WEC_M=Vi@f@}F9JTWs4D?r%kEwIQAF%ew0?C6x{OQ{G(Uen9 zOL^0EMN^dxPg)u3sDf#J!jogU+LQU(Q&;EOb}I<@k)4$qev9TCveFqE%oL7^!lxKV z?lPHo!}6xNp|TL-h-Z`bO29-Qeq!gf`3B#qyyv95Us@)|s z=lNq7A|~Sl6h5r}{eB96@&i(YY7P?xD0}j}!zB1%yoc(555m#>DjT(5!{LLQNq{dxR(_9D0(8`2YJK z1sv9}jF9*^DkUa_=z-VOSzmW}heBc2r`yJdBf@Qw4a6)=$Bi^3Dssy% z7a|G%Q?w*lgy|I>~)NocPvsjsHig>Ccs}G=sbEK6Q$$QZy!;s zZ=@u^-yFKdeu+UL(@bkg0c6WWFZeIXeOyDVC6`jgb<;zq_mSYPGnTi&EAGZ`7yGw!eg?lz=wVM% z2znA!nM=qvJnt8<8=90RQO(iSfi%^UHb(dg{I1|1%Y!r~THh5TwZy@kB~T``@^Yqh z$(!}`+0{8K{AF;Y!8_NPT5IlzPc5?bW%5_RiFQ`E37CUAZ&vzK=j|5mKfx!r@?Qsm zOyjL)jKhZs4&`sbXYzWln&7SogO4gq-kGm(R>8kM?#cBl3s%Z^c>0+2NMZyZz}JhD z-9wa|VH_v`(a;Iiz}-`nFOfvF9k)8sszc2S_`T6&*+uu_%Lanr z6Lv^WmmqxG&Ftr@o=zmBJ%hQfWk zmtD7CzZh?s(lE`nbLcG&s|x1mwD-xWjUty~HWe41&b&XHy_XwAD@)3+LOo%@RG=#fC0^QSs%zMn7PApaL|kv-U=3^@>I9%+?5iIHM}Bv2(LXhr~SoSFDaifW2=? z5W8UrMd=7T4&FEpNN1>y#-=8f4EDQt0n}kK!o?_n&b*MOZ@_(5I*nV%=y37qth_o#1EnN8-kiMC75DG(0 ivY|#c|8D7rRi^>_|3s*e)LJK+K{zhPd0@Rn|9=D5lNG@L literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/in_progress_inactive.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/in_progress_inactive.gif new file mode 100644 index 0000000000000000000000000000000000000000..b6db4b95d4b372f9601e31fdad571ebfe3925ca7 GIT binary patch literal 900 zcmZ?wbhEHblwc5L_|Cv^@7}%FuU|8ag3%Bdks+Y?lLhQ=9S{l16AT=Q49pxd9vc=M zY~~OaVmYuO@o*!bvQy8G0EMGnjCw|MDkdts_6zA|vAmq1;?~RHlP7X>;#2qOipG5{ vk&~XCoM{yOtY)XNn%7j#+;wjvC%^EWYv0OdYGtB%c`4UouenkR3Jlf&fO9aq literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/line.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/line.gif new file mode 100644 index 0000000000000000000000000000000000000000..0597cb126ee5d41dab4882b3499b71c08ab2260d GIT binary patch literal 68 zcmZ?wbhEHb6krfzXkcVWOG{&5U{L(Y!pOkD$e;scGk|0mn5299SF*j{FEz*iQn${r Vs>|;j6JGQzNt!p)Y9=d#H2?ww6L|mt literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/line_first.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/line_first.gif new file mode 100644 index 0000000000000000000000000000000000000000..975b2a9e3ca0dab6d8a0354e4af731dc7f5674b2 GIT binary patch literal 67 zcmZ?wbhEHb6krfzXkcVWOG{&5U{L(Y!pOkD$e;scGk|0mn5268SDt>$zj)4;C=RE4 UzZSi*OgPcABx#;}Fav`%0QLP6)&Kwi literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/line_last.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/line_last.gif new file mode 100644 index 0000000000000000000000000000000000000000..f5a08f400c9375cf865cc45f95371babbe237009 GIT binary patch literal 67 zcmZ?wbhEHb6krfzXkcVWOG{&5U{L(Y!pOkD$e;scGk|0mn5268SF*j{FEz*iQn${r Us>^I_3*DzZ>s^I_3zwIql*Xk+ZMrNa!e9*m7BLdl literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_blank_icon.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_blank_icon.gif new file mode 100644 index 0000000000000000000000000000000000000000..54b5b74ea12bf39647a0d33ec2ec4983b1004624 GIT binary patch literal 836 zcmZ?wbhEHb6lM@+_|7m2Mnhmkhk)Ww7DiA2=zs`No?zfmWMJfw@z}87U^9oXR?LYF Z3lFyoD0|KE*tqCuw}f$4h=c%xH2^W05Y+$x literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_checkbox.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_checkbox.gif new file mode 100644 index 0000000000000000000000000000000000000000..681778a0ff198f579494d6f66e8c4dd23d71286e GIT binary patch literal 191 zcmZ?wbhEHbFVYKKlIm z|$VbS)kCT5;^Bcf(B=ifzql? zdYg~DytU6;<(Wwwi_)yOIfvUl!e2Ye@dXO}EHQC$SKp#2XgWE}(?MlT5pyzQskYnn Jdy54atO4zuPWJ!+ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_checkbox_selected.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/menu_checkbox_selected.gif new file mode 100644 index 0000000000000000000000000000000000000000..dc70409344fb6a7e937760cb4a7c365b6e886579 GIT binary patch literal 448 zcmex=^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<H1t=;j2-3`oB+kghz$_?am{|DX|1Aa{W=5d> z%z_N|4DKs`E%S*ByK>X?^qEOfn|XZwmD5DS+?6zbJT9^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<!nXvKDA7vmk>#L;mgB?f!cU-<^9N zUv?xu^TO&Nu^Tf&nr^BJaGmiv)Agrw`UM6lHSdi#jJ>90Nq@`rRB8GhXOwJKv(r#e zhKZf|!mAHoF2^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<8LvS(xE6 zj7-cdtb%Mph77`rj-rVhfr>=Y^)fIrfy@-d5EoSZe~W>KnGt9)vmk>#L-OjcH6;Rf z-j!Q#J=S*CHDcS3gl%q%mQ~H&J!4wV3g0F3RnqepF{I5(bDwruX4#ADT9p^IG_~aP zZcE5I`rbQTp)!fB_`u^;)BU2C{bZdqOY*_`(n*VEEi+W%JKZC9^W&Tb&nFX%4;))k UI7R2o(YZU-Kh&05a{s>x0DF&T1poj5 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/node_close.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/node_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..722763bc07f8d1060b449c4617201146314faf2f GIT binary patch literal 88 zcmZ?wbhEHb6krfzn8?78mX^lAz+jv<6G$rlWMO1rU}n$(vKc_~3{0AH`d6NQ%fGl} pLDX)CdulRk8=BKQI>eT|T(I@NeT|T(I@N{y{YJMOy6^>4PK4AuY{%NS<> literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_first.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_first.gif new file mode 100644 index 0000000000000000000000000000000000000000..a24ca319551f2c3423afff46f68476119c42e616 GIT binary patch literal 85 zcmZ?wbhEHb6krfzn8*MEX=!Q3X)}Qg#h)yU3=GT+Iv`PyJOh*3oc@)k-|{amSs1n3 i>7G~lyo>`De77nq6gyVv&W^jzvhz#wecwD025SIi6dB6^ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_last.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_last.gif new file mode 100644 index 0000000000000000000000000000000000000000..75c6e1d522acff775d949f38d1f2df6bc71fb6f9 GIT binary patch literal 85 zcmZ?wbhEHb6krfzn8*MEX=!Q3X)}Qg#h)yU3=GT+Iv`PyJOh*3oc@(!ulGyM@xLU! i>Dor^?uPagB?l_`&RSJ*uH2QlCHH#o^I!W!7_0$j#~UC3 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_middle.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/node_open_middle.gif new file mode 100644 index 0000000000000000000000000000000000000000..fa28a082ae5eebf1c0afe212a80b22f3cbf79435 GIT binary patch literal 87 zcmZ?wbhEHb6krfzn8*MEX=!Q3X)}Qg#h)yU3=GT+Iv`PyJOh))oc@(!ulGyM@xLU! k>Dor^?uPagB?l_`&RSJ*uH2QlCHFe-{eX4Wm5dD50G7)dfdBvi literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/noline.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/noline.gif new file mode 100644 index 0000000000000000000000000000000000000000..af2f8eb64bbb8b2a2be467462732fa89e2d0d1fe GIT binary patch literal 58 zcmZ?wbhEHb6krfzXkdT>#h)yUAf^t80Ld^g3AXgFJpGn`@tiHUx;Nk3Qysv-U=08x C{0;#C literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..85e199a5c895776400b7b0b0070d71c906e78f23 GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*vtR||Ns9#c<|81O`8rLI=FD*f=wGYUbt}K;K75dSFc{Ua3N3@ ltO`mf{$ycfVBluZ0r5d*FtBhNh%TKZsivrO>8BurH2^n0AqoHh literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-mid.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..678893de5e1f68146a57b140326864e83b1051f2 GIT binary patch literal 612 zcmchUTTjyf6vrz}(FkZFc!@U#i`NkcqB2nwxrs19H0GG_V#E(1pFn*R65|6g##gha zCHfU;*REUJ-P*0)*4r*!Z(B9dCtsW$AHwr+o__hAlmCByVQxJ5!h-;!BkgImT9tA| zkri2z3qnEQ1&-wynjvrkkK&H=quF!}!_>5TKF?DW9gC3|7BwwPQPo1RnCJN{%QDF% z8IR)xVK;2cwhYtI4PBBYQ4(DxlXQJFMN?Q5E0*WvN&!2m;S>EX!u&ak63C zwq;qSsn_dTttN@0!1I}OnxSbj7IPe@*=#l%ZOU{R-KFZ9=7P0qwOXlE%6n>26icO2 z(S0nR&*gF)$7QqGOvcruQ>hfgFcd{45($zd34*|J9K$daMI(`jo5Nln|8;r)c=jR4 zbHv}i+U^ADLf=3zco=SXcf-UsoW6Dk0)aDd?CuEkob7>glanwydJpdR_QLh4DR}S= zI;N*#X66E1?3;y4ot<#ma~|df#$Y}H53lrt*SjCC9=HJuM~=fI3Az^jFnnSdLQ5f7 zUcLz{KVk6XDjXcT1-_$?VeK!RTHn}xH-z>14~?y&YvHX9|1;mt?q+y!cDw)kdhYY< mujGe;ku7cf*UQ95-;*y--*1NLPk|L`Bl!DOXy+}0O#B0r%% literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..3f2545f61f93a69d179ea1305cc3f63c58230334 GIT binary patch literal 48 zcmZ?wbhEHbWMN=uXkcWxckkZ+|Nj+#vM@3*Ff!;c00Bsbfr-7RpOfwOeJ%!T085Ar ARR910 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..970bccd36162780525b81504b09dbbecf929f6e2 GIT binary patch literal 69 zcmZ?wbhEHbWMN=uSi}GV|Ns9#bLPz6y?giU*|U1}Y9JRVsQ8nGk%57YK?kG)q?Uo1 SD`VH4rKvMK9tm(VSOWljnir=4 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..6f343a841e5133dee82b093bd07c4a847fbc0d6e GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*vtR||NsBrv~knHLkBkksZARX9Xz;j!Ga4HE*v~~aO1{}3l}Z~ nDgY}45sE)q7#SFN7<51!kQodt+y!&DwkWACO`PB^$Y2csomL~# literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-mid.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..b08e024bbd65922abc82e626b17f152047c140e4 GIT binary patch literal 589 zcmbu6Nlz027=}lwmc%O6M63&uBB&s70nq}kVJ(y@Dq0Y*jR%dtLX95OgBOp+gWmLn z|De;^Ix}r&>1>^)`*fC$cfHgpM*o1{;XA$G^CaoH7`CpMK`>>QX2USFVo}vJQIa^G zrx}LKWKax)VA!%P({ck1y`d|rA}g|srx}`}sT`FfGp>Zd2|NX*z!X?26^lhp(^OSe zBuNwmo@E(^p)m}#Ez2@Z(=haUy;iL%vMd)00?$*q97zxuilPYOI8L+KwC#UcL)YDS zy;gHCs+CHmTrQXXIuzv(qae8^(RB$N$K~^RmSt(0rYIMj%Vx7AN#Z!3PN%mG2n@pz z1c4x!OeWpZw#)n975wSh0RT^d;WnuK6TtiR`P9oj)6+iR%$u3L$1l&$g+jgi4$hBv zcLlq`ec?|N6AO!ret%>#5?T7T6x|t(-uixa`P`w~f%6?5cP@BN^xy5ja`hgvvNCe` z{=mSl2cx^M#bW!9tct5^-nEM-$BvGjT7S5HdSm1IroA~hc09_Xzx5e@7Z`n}U|V0%_q|hZ$v`JC`5O_nKkxtm literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..27fd083039befad632fa14f94ed90e5364e89acf GIT binary patch literal 47 zcmZ?wbhEHbWMN=uXkcWxckkZ+|Nj+#vM@3*Ff!;c00Bsbfr+grf5GXytPIuwLrx5? literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-mid-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..aca6aa89b7dccd46cf41653ccdfa91166d71bf14 GIT binary patch literal 71 zcmZ?wbhEHbWMN=uSi}GV|Ns9#bLPzH)2H|D-MeScp4F>Y14R^nvM@3LmFR#}fYdTD U^Hl6w^Q}$9sZHSUJr)LQ00iS36951J literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..6eb85120b4d000567c496df97a247bcbc9039f83 GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*vtR||NsBLc;Vv4jhi-Z+O%Ndf=!z?E?l_a;sp>mc<|ur)vFgS oTnJPHR?DFHlZBCiftNuC#08nbz{0&jW*eKK_sdq7C_x5m0Pyf7qyPW_ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-mid.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..3854b226ac3ff1d4984161250fc7ae2beafd5224 GIT binary patch literal 371 zcmZ?wbhEHbWMPP4xXJ(m|NsAg_~7B?OP9}_K6CWQ(dW-!ymU%Pba;;WZ0pFMs0BSFT*SaN)xF^XJcuF2e`Db%Z}G(l5&vZl&3 zO`e&WEORt@=WD7i(&SjGDYinBb+xA2I!*PBni^X+Z{4D?ZRd_%d-v?$esK4peMb%) ZK5_Kq@l$8doIiH)^rdrG&Nwny0|0zZwK4zz literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-top-dis.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-top-dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..cfa1794ca55f9e857c34b59b83e0dc1a3d4749b3 GIT binary patch literal 49 zcmZ?wbhEHbWMN=uXkcWxckkZ+|Nj+#vM@3*Ff!;c00Bsbfr+E1pN(C5uYv}HH2_mW B3$OqH literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/off-right-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..2c8df3f7a0ba46b2556f6dfe0a9c7ab46ab563c6 GIT binary patch literal 70 zcmZ?wbhEHbWMN=uSi}GV|Ns9#bLPz6y?giU*|U1}Y9JRVsQ8nGk%57YK?kG)q?Uo1 TJ7d?Ht&e9q&XX`?WUvMRmK+!D literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..98e2800d0ddb58b87cc7454e3e738363cf3d5aaa GIT binary patch literal 52 zcmZ?wbhEHbWMN=on8*ME|NsAAy?Ql}RQ$=p$iTqNpaT*G$ulsqhU8UD3}mnd0G7WE A@c;k- literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-mid.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..98e2800d0ddb58b87cc7454e3e738363cf3d5aaa GIT binary patch literal 52 zcmZ?wbhEHbWMN=on8*ME|NsAAy?Ql}RQ$=p$iTqNpaT*G$ulsqhU8UD3}mnd0G7WE A@c;k- literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..3d3f923f5d824f08cd0df3497f02d3164e1fcec7 GIT binary patch literal 72 zcmZ?wbhEHbWMN=uSi}GV|NsC0wMP2?e&5xrR|DB#F$Tq-EQ|~ctPDCJE=Vl{GjD{K RwyTqaVH)p@2NM_=tN}1o6axSN literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..5c5c24713dba3f67f4df09d21715d11002ee75be GIT binary patch literal 51 vcmZ?wbhEHbWMN=on8*ME|G@yrQ2fcl$iTqFpaT*G$ulsq^z=)zGFSruQTYoC literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-mid.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..5c5c24713dba3f67f4df09d21715d11002ee75be GIT binary patch literal 51 vcmZ?wbhEHbWMN=on8*ME|G@yrQ2fcl$iTqFpaT*G$ulsq^z=)zGFSruQTYoC literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-mid-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..2e79ddbf4214d1b1aebdf2bf04134169569a396c GIT binary patch literal 69 zcmZ?wbhEHbWMN=uSi}GV|NsC0wMP2?e&5xrR|DB#F$Tq-EQ|~ctPDCJE=Vl{Gna?g OB_jhbiB)Sk8LR>L*b_(q literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..b7cdf77b5ed5291564adeef2dcef40dcd9a4a460 GIT binary patch literal 52 zcmZ?wbhEHbWMN=on8*ME|NsAAy?Ql}RQ$=p$iTqNpaT*G$ulsq_M|pW4`Q$e0GL@0 AFaQ7m literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-mid.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..b7cdf77b5ed5291564adeef2dcef40dcd9a4a460 GIT binary patch literal 52 zcmZ?wbhEHbWMN=on8*ME|NsAAy?Ql}RQ$=p$iTqNpaT*G$ulsq_M|pW4`Q$e0GL@0 AFaQ7m literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/on-right-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..903246129658647750dea8f93471473b29b59647 GIT binary patch literal 72 zcmZ?wbhEHbWMN=uSi}GV|NsC0wMP2?e&5xrR|DB#F$Tq-EQ|~ctPDCJE=Vl{Gq18BurH2^n0AqoHh literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-left-mid.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-left-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..8b16e79f74ee906e061ca5d0d2eb947603393c74 GIT binary patch literal 66 zcmZ?wbhEHbWMN=oSi}GV|NsC0_3P&^ApZGt_3G6?E>KYMCkrD30~>=5NCikO12cQX N=2M?qPp~jp0|1De7|H+u literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-left-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..be4bdb4e6d6e165cba2c23853bab63477e6e5440 GIT binary patch literal 68 zcmZ?wbhEHbWMN=uSi}GV|NsC0_3PK_)vJLFumFfq{K>+|z`(+w1LAEp}+|z`(+w1LA{|2L L`GjXG6N5DX+36EJ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..6eb85120b4d000567c496df97a247bcbc9039f83 GIT binary patch literal 94 zcmZ?wbhEHbWMN=o*vtR||NsBLc;Vv4jhi-Z+O%Ndf=!z?E?l_a;sp>mc<|ur)vFgS oTnJPHR?DFHlZBCiftNuC#08nbz{0&jW*eKK_sdq7C_x5m0Pyf7qyPW_ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-mid.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-mid.gif new file mode 100644 index 0000000000000000000000000000000000000000..afcc8283079d51612fb04c7e53c00a93e15e5fe2 GIT binary patch literal 67 zcmZ?wbhEHbWMN=oSi}GV|NsC0_3P&^ApZGt_3G6?E>KYMCkrD30~>=5NCikO12cz3 Nl$Gj+36Vk!)&P_)7f%2H literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/over-right-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..caa95daae28c5d8482661ecbb10b3d052fca7af7 GIT binary patch literal 69 zcmZ?wbhEHbWMN=uSi}GV|NsC0_3PK_)vJLFumFfq{K>+|z`(+w1LA{_$= Mk)WWuEGL6C0O+q0lK=n! literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/popupclose.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/popupclose.gif new file mode 100644 index 0000000000000000000000000000000000000000..91a1dc5437b63c9cc83b02313870a3f64030aaa6 GIT binary patch literal 326 zcmZ?wbhEHb6l4%$xT?u8pP%EN2Pu@w~a__{9Dv>2cR~?|Lw2#_NT%?<)zP zo<8;E{F#eo#BLne|M2$hhiS2&o!x~p6#gS4hvr>wjyM+cAdEQUF5 Rob0ZPyp}Cr;pxa=4FJ$za47%) literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/popupicon.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/popupicon.gif new file mode 100644 index 0000000000000000000000000000000000000000..7f10f3e81c9b6c9406320efa1e955877469694bf GIT binary patch literal 988 zcmb_b&r8&C5S>EWB}{O4Bg`N@XcU&_K);DZ+LA6R3Pyn?F$XP)&J`;L9o$2g#G#-l zf{?vLzdUqU3%u+cq)Q2%ilRdh6%m3lz4`nN4J_ZCotZc9z4`8mzT$y{=NlSZc4aqqYz1q8fizfx7HU`wY(N7G!ybYnN2rL2c<94gWU8Vj>LC{_ zP&5@YF^77PLa(@rn>ggb575Lk?0|ldfI_ea7)XO9TEPR0femP2c{mqkqhtW_AE8z!dVj6aU69hvcSOW~CF$r4WfyKZEw8x2} z8)f7O$HibI^kFSBOD|dYn(iINbi%MXT_t*x(cyaXE=H3bafGBWkP_**N#YT}2^y~h zt_1U-39CBdZI1r}Wfy6CcH7BYTPs)V@(mw~pNr+@`9gc;%Jj$C=4@tZSK(C4^X4-P zXJ4(GxIcHZ@Z(bN>Ba}uk*>*7CHG}<)9#j+)%Weo{k56l$HNm%ZH zw|BH-cFVh?U4@6=2JdiB!`i3Wv2tehMgLm<_te~@*3LacU(4gQr@74aYYT19UXNUE J+fYY`{{iO~t0@2g literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/remove.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/remove.gif new file mode 100644 index 0000000000000000000000000000000000000000..3a1725dec6d368d23640fb6f6f486c618c86e7bf GIT binary patch literal 76 zcmZ?wbhEHb{N}G>aE)VU?P-$QrWee>U=0A`eHs@4 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/resize.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/resize.gif new file mode 100644 index 0000000000000000000000000000000000000000..785cd8340202bac5f4659db5b32913e8f63e189b GIT binary patch literal 121 zcmZ?wbhEHb)?85PcXNk;&ZWganH+=P Vg$S6;KbK+bupnynjcg_cYXFKCE&u=k literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/selection_spacer.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/selection_spacer.gif new file mode 100644 index 0000000000000000000000000000000000000000..6c9ed1231a231a61661e9debd619f780965cdf32 GIT binary patch literal 45 ucmZ?wbhEHb6k%XwXkcLY|NlP&1B2pE7Dgb&paUX6G7L;CE&VfD8LR=|$q0=A literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/spacer.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/spacer.gif new file mode 100644 index 0000000000000000000000000000000000000000..35d42e808f0a8017b8d52a06be2f8fec0b466a66 GIT binary patch literal 43 scmZ?wbhEHbWMp7uXkcLY|NlP&1B2pE7Dgb&paUX6G7L;iE{qJ;0LZEa`2YX_ literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/submenu.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/submenu.gif new file mode 100644 index 0000000000000000000000000000000000000000..dc776de65619e29af077658f4cab5869a1484cfd GIT binary patch literal 67 zcmZ?wbhEHbyCBcxh%Px^YiiS?Cap*-|Oq?^Yif7*w^sz z@8sj+@9*vA<>l?|?CI#|^6~KT@bK~R@bdET^YZZU@b2yG>*VC(=H}(-=;rV5?BnC& z<>ln*=;rC^=kD$7@9ymJ@bB>O?eX#N?d|LC?(F8}&+w1G<_V)Jp z`1t(%{PObg;^N}}|Nj60000000000000000000000000000000000000000000000 z00000A^8LW001!nEC2ui0C)g0000L6z?g7IEE8? z;IMd1E}PHjG`T1UxZm)&d`_?1@A$mFE*Q4=fPsR8gm!&@g^7xbi~(JZkdcyfkCT>{ zi(LepoSmMZprN9pp9rR>sHv)`q@Am;o0_e&w6&$Lsua4ryqu<^xCo%Kw#CMt!LPi_ z6seoZtHS~i)YaD4*xB0K+}0D{;NcV266NOS(BTHuNp|a)69y(~=oT0Pl&!97G9z7XymjcgQ)8G-yS8l% zC`_2(z`M8a-X>xTSKVcS@#DyoD__pMx%1-}qD!AnJ-YD?*t2WT{=9qgE(XGjA5Xr# z`Sa-0t6$H)J$p6qlF~ETcCaB-K1sb!dA zT1jS^Ql5#XlWMN1WSedp31^%_&PgYc0wkd4o_zM{=bwNED(Iku7HX)T1E^pC3>d7C O!V4_4;DP`_0029|%I|0Z literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tab-on.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tab-on.gif new file mode 100644 index 0000000000000000000000000000000000000000..e38f76e861e480c3303a4c2a02b5d65610a322a2 GIT binary patch literal 278 zcmV+x0qOonNk%w1VR!&C0HOo{|NsC0zfG&FtNN@P|Ns900000000000A^8LW000C4 zEC2ui0C)g0000BqNGja^Fv>}*y?ClEhW}tFj$~<`XsVV1=LK*q&vb3yc&_h!?X{gj zZ%8Z}kGEeC$!t2EN`Q1qty-_xtai)odb^CTcuX#v!Gg1T&2CS_?znt@h12i&wLQ=8 zqy2z^b!mcyfqRCDcZiCOZj6qRXONPWVw9GdTbP=iR-B%p0HC6sq@|gssFkX#k*%(c zu(64=w1u{}hlIMGxxIbAzXz)+}&p1;AG4N3!Tc%h%-@?CtLF@CM)W;PLkN?L7(m{Qds_00RmfNU)&6g9dvrSje!U!-o(f zN}Ncsp@WMUGiuz((LqIsJr;-@NwTELlPFW!s$7XOg3FgMW4dHXQ)G_=ICJXU$+M@= zpFo2O9ZGa)4+Kb)DqYI7sne%Wqe`7hb*hr9ShH%~iWPv@uVBN99ZR;X*|TWVs!iKt zt=qS7P* literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/table-border.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/table-border.gif new file mode 100644 index 0000000000000000000000000000000000000000..f1894f227fddab024288148117869acca386df4b GIT binary patch literal 804 zcmb`Gv2j~r41?)TuH2;b2*5DQyLGH1SOXR~pgL$WWqDX=O`1Jez z?d8|shx$=pmAKC5I**I&O5E>v^SjIE!IN(UzkOeH)l_YjvWcv_daAct)lPA`W@@%Z zHBRq#?bL3qYMoJaX-ZpCDNM^%U!3G*Eh8;o4iJj4mqmQ*@yR({g<{(Kq0IFgETB@g$Ikl1{y5Kxs=HX?K(!HkF{jd%J_<0 zSWsMRjgL5u0q~+7qfv{M_yJ9(u>(#BMj@;LgEW)Sf(MJi2HH7Mx+#+r=3*F$KGu@y zykzn9+&jf{!q|MSlHOxyIDZ%E`%k^zhb_#q&-aKXmo-nFsf; zJ-B!M(LrWove*Eb6lgD=+KLj#vK6-HD$)h_bjvu^w`SksJSMT4w_Vn@H`}eM2 zy>jOMy=%*s&R@J}&V&0mu3kBP?CAbyPwt&OaroKOyHB6oy>j_H#-sbdi2lFS!YQfx=EGbpCmfR$H0ga>yT=gv3+2YJIWVmO~ o&SaL*W%f;*WaT!q?%26g-I2i>0L1T?4FCWD literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/table_col_header_dis.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/table_col_header_dis.gif new file mode 100644 index 0000000000000000000000000000000000000000..4e314c6ca56a2dadf4e5a1af4f2340a261fd9cdd GIT binary patch literal 157 zcmV;O0Al|~Nk%w1VF~~e0P_FE-L{=I!q3?(gdF@aypJ z>+tdH@$l^N^6m2R?eg>PA^8LV00000EC2ui015yS000C^u)Wu6Tg=&wU3MVIWTQux z%BV7_ldf!<2C|C=Itiej?dcT9PI4lqV L&ggR>5CH%?j`L7= literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-left-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-left-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..cfc54e911b9cf7079cb7e13b7c34928ac1ad5d4f GIT binary patch literal 815 zcmZ?wbhEHbWMN=u_|5Y14Y0xqr_+k4D%4s0r?M< i7Z^Ci8Q3`_Gy)DVFtKt77#z6Z(9kZRY{$dFU=0A~4;gU) literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-mid-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-mid-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..0233da6ca2ea8302f691be436f39b24ce003569e GIT binary patch literal 815 zcmZ?wbhEHbWMN=o_|5Rqa$?y literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-right-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-off-right-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..4632d09d991c333a71f4ef57619fcad965cb147c GIT binary patch literal 816 zcmZ?wbhEHbWMN=u_|5mc<|ur)vFgS wTnJPHRy#_JhQP220UeNUKzV_ILxe$)!()R(<3Uzt4vC0>2Mo=ujEoG{0C!3ybpQYW literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-on-left-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-on-left-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..e57cf8ce401650ddea3066df4655138a19dcb0fc GIT binary patch literal 817 zcmZ?wbhEHbWMN=u_|54iN@+4hac| V1q}?W{7Nzn8x|gJV`OBo1^|MT6E6S& literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-left-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-left-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..496f6e402f111eed3c9e361976cfcf79a3f8c35e GIT binary patch literal 815 zcmZ?wbhEHbWMN=o_|54nYQ14jGSt R2Mx{4Od2sK0umhRqa$?y literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-right-bot.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-right-bot.gif new file mode 100644 index 0000000000000000000000000000000000000000..f56d7e13922f74888fd6cea10460bc3fda4a8c91 GIT binary patch literal 813 zcmZ?wbhEHbWMN=u_|54j~3s4jBW3 Th6YAPCIz1p8x|gJV6X-NULO;6 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-right-top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tbot-over-right-top.gif new file mode 100644 index 0000000000000000000000000000000000000000..8ff573ffd331e2d598bd2116d95da2d1daa4ceda GIT binary patch literal 815 zcmZ?wbhEHbWMN=o_|5mc<|ur)vFgS wTnJPHRy#_JhQP220UeNUKzV_ILxe$)!()R(<3Uzt4vC0>2Mo=ujEoG{0C!3ybpQYW literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_document.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_document.gif new file mode 100644 index 0000000000000000000000000000000000000000..61139cc7af13202d2df3fdb1f59fb6cae14eaebf GIT binary patch literal 376 zcmZ?wbhEHb6lM@+xXQqA?)HldcVC{p_5AeB=dFFy0%Fp>|N0Z2oEMu_>f{&h85$Rr zUi9tf@8E>2C$B#_c!#(JM!o<1kx_V7*5r0KVwzO(fRT)K9PPef8mQQgGZ zOZJ|+l8{@maOH;U58pg^`SI$*H%SH6trO=o^-jO}4VbQwiLc(s@MxNH}=gJz>Jw>_>K6aVG zP*Bn3;BFzlv>~qk(TV_WKXx(0*0xr$FgIRd-M;=lVO~F0KKAbNeUS(Shzq) z(vM5fXyvMvf?R$AW_p`8Z!#0`<1{wgy=S*EryoC$@sXoPc=-LqP0yS?C+;U|a{0`S!Q}{Ll66k^lLm z{r98#^P>O!(Ej_=%*t}2Pz*E<{ zQvKtK{pE`LD#yR?cn+M^7_$s|JZ%!+P&)9x%2Pm`1SAltQ-Ho zP4n;R_wMMctE>P2{{R30000000000000000000000000000000A^8LW004FXEC2ui z022Tc000NofOZ0MgmQL=h>3^;ayxW$aE6MLa$Fb$2@-0Bg_Ch99TgWF5oT{HX=ibD zig6(`oUxsVaaD3zWNu|zV`yz#SYlU_c5zT~6ATLq9~2%L1xGqAtA}x4aT*Q=2pkp- z2MbLz}_5K*0< SK!XCEM6{^Uqezbi0suP&hJPOb literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_folder_closed.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_folder_closed.gif new file mode 100644 index 0000000000000000000000000000000000000000..f235dadb53ea81667597c31df304e6ab249d6ce8 GIT binary patch literal 632 zcmV-;0*C!aNk%w1VG{ro0OkMy00030|Nrpw?(gyI{QkZE|JM5Xp!xWr`S_#z`ndi5 z%K!h+{{GMU_n`dxrT+Y<`uL{*{kZ)4w)FG5{ru1W`lS5$qyPJ>`S!Q}{Ll66k^lLm z{r98#^P>O!(Ej_=%*t}2Pz*E<{ zQvKtK{pE`LD#yR?cn+M^7_$s|JZ%!+P&)9x%2Pm`1SAltQ-Ho zP4n;R_wMMctE>P2{{R30000000000000000000000000000000A^8LW004FXEC2ui z022Tc000NofOZ0MgmQL=h>3^;ayxW$aE6MLa$Fb$2@-0Bg_Ch99TgWF5oT{HX=ibD zig6(`oUxsVaaD3zWNu|zV`yz#SYlU_c5zT~6ATLq9~2%L1xGqAtA}x4aT*Q=2pkp- z2MbLz}_5K*0< SK!XCEM6{^Uqezbi0suP&hJPOb literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_folder_open.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_folder_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..1aedd86ab6e55b25ad6d95358d174e0aefbf48ae GIT binary patch literal 1054 zcmeH`=}Xgb0LFhqg=MomJIF{k6B0W-BDJ#1%9%zA9Z--`FS>{#nyDFC9x!I6>%wj3 zRaw(DZ;ghCrenrzsXLsq)2X}9e%I!=>`&-*&x_~f^WyX2IY~W{l3EZ3g+Va18UTRZ zWwkj>-W9Jd{taCN$k z-QPZJnj0%HOK+LvC36#{xak$JH7u!mtcI^6t&ubRX_DSF*_VTk*$23Rfg7qd;xhGQ zrPs)s|50z!3Kliv-<#G=ybG7`Vt@3WvCq&j9Rt(XfJG+0Q0p}?=S5FU>H&*RVA2ST zYQYpQVTPAD%}bQ_WUGeG!7|z}84Z>dB8nnRS%N5v?b9@TzDz562n;Nnf@#wZnl%Em zPH55z7d7IcXOQSEW#-dv88=bMPnNYO$v>wcQW`A14@+rINg*tIPX+t*6k7L@{}^lcy-9W<~GR`BB4ZYpkKSItvK~M_M)D2Bm1L>5|RPEE9ico6SeP& wy0PHkn!36}B_bqxq>4mND!o8q>jww#O)_K8GENK9Jal>YO_i8aav0kG8^k8S82|tP literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_line_blank.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_line_blank.gif new file mode 100644 index 0000000000000000000000000000000000000000..b4a7cac42a50be0f24858a23c1b642a45056851b GIT binary patch literal 64 zcmZ?wbhEHb6krfzn8*ME|G@yrQ2fcl$iTqFpaT*G$ulqsPU&BH`Yr$BIa_XZZ@#yu JI*@_E8URM%6dwQp literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_line_last_node.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_line_last_node.gif new file mode 100644 index 0000000000000000000000000000000000000000..a1aacd59aae7bd6e9e2ce9ed9d0271e519317845 GIT binary patch literal 78 zcmZ?wbhEHb6krfzn8*ME|NsAAy?Ql}RQ$=p$iTqNpaT*G$uls?&(U38ebQbgrpU~D bpo*wrZlf6t_3!kts-kI#eWa#oIpyAYkjWRra z>J6$6OPv;|H7wciK#c2#pn{X7!I}0A92X3B@bCkvlp-5fBJg%!sY#kj(qv`r+f(a~CchIC%8-od>t>J~(jb$i_`u4;(!5^u_D{|NjFG!3q?AvM@3* zh%@MbWI=W^u!cQQ?K+e(FS&Ew^i%WnxX+mEW#XLpgoW`AU$bIDfeUPk49{M?{{HLl*$bC9Y}&g2(2)5JC~fNDN|J$K>Kt-BBY|Njp(0V`1a$->CM zAkLrzk_Fkxz#8>Hwd-KUyyVVx(@)LQ<33}umx*)Y6BfohBCSk@E`I_TP9E4O!_%kk z;Nq|}YJr-=(gP2~xNZn0Fj?xHY2Uzc!C(h(Z~L#H)%!ilBkqZu{{FsRzfq@IyH%rI Hk--`O*eUPk3>!9WJ$vEu_g{aXy?Fio=iiN+w?2FE=EJA2 z2M!*2|LN=gLr2bCxOCv)(f6OeefaqG>5JF5?>xA5_rb-W6HWuch_xasIUgtpu!yZMW7%ON)^u!eUPk49{M?{{HLl*$bC9Y}&g2(2)a1yPDq-me;N$s_sLf=;li~c>ao?VMs}FRk%)7S4m|9<%N_1uNa z2M!*2_TtUP&0BBZd2sH+rCWC&Y}~Z(WU%dYC@#}#@NB;l+4>SQ6Q2fcl$N;oT z2c!UGCj+a`0@c2h%y}8BRyn-hrQX1E!iLAeN7nt4x}|V}Qi2F;Qv&A$4vV=0s+=Db pG}f>*m9VVv;NjkosLf=;^}Ckvlp-5fBJg%!sY#kj(qv`r+f(a~CchIC%8-od>t>J~(jb$i_`u4;(!5^u_D{|NjFG!3q?AvM@3* zh%@MbWI=W^utq&l?Mum=m$7PEsD-`x9IV2yDGtqc)I(whc8jo+gHP%1B|F^WNx=Fl2t4&3b G!5RQf(PBmb literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_top_open_no_siblings.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/tree_nav_top_open_no_siblings.gif new file mode 100644 index 0000000000000000000000000000000000000000..2a17e885f162ce34a6f4aa49578a28261c8d9171 GIT binary patch literal 211 zcmZ?wbhEHb6krfzI3mU%n=_4pf#LhFzZ*7f{r>as`%ho@A3E~v#p|;dE`Rv+b>rr( z=Pq1+_TtUPOeQ@C5k#iR=9XNRO!^f`&4js9D=fTq#umAu54>SQ6Q2fcl$N;oT z2c!UGCj)E10@c2h%y}8BRyn-hrS8CSM2EvcN7OYyrE?BvfTaOb&tb<1rU0gZ70sSZ t4g%c=m>L)KF--1IOsJ69qtuXeKu$v{<8=1ERkz>&*i(1@csm1wH2^`zTciL0 literal 0 HcmV?d00001 diff --git a/Music_List/WebRoot/xmlhttp/css/xp/css-images/window_top.gif b/Music_List/WebRoot/xmlhttp/css/xp/css-images/window_top.gif new file mode 100644 index 0000000000000000000000000000000000000000..93dcbbe0d49f8a180824b39c44d4c83de6ab671c GIT binary patch literal 1258 zcmZ?wbhEHbRAZ22_|Cwv?j4|RVYwAaakcXTx-x$1}uw?#c@OsJ+{J?th zf6kcis{Q|&f!fo4v*f*FNCcYmlquvnd&(!qlz$ANPZ;7}F{b=yNd3c@`j;W~FLU%Q zhR|1xp-&lNU$N!BV+ec25cGsS`4e;WO}5$4>9|rFy zEYUYPW53x<{?9N9MnizC5YPeX0_6n;4qz78(jl(cJaAmfC#w~CENADWXQyXcWUtzisO-WaV^Q&; zL-4SA;C!1}CebPrm&;4+3ok4PTYwN>yR`I?*z{n+%ns`8?+U#xA z<_y^tsnX?ocQ)}z1T2_Po*%!jit#t^pX~;TY`jtt8zxi~CLilkwC?+}!{{j+8;?%J zhQ!0q&doGW=R13|IP=nC)A@3DBfn%^Um30M!8`jan~;i{&yGT8^St{z)&JbP8(s0? z;o-`D2}Q?4J(6dqyQk|p?kaw9b!GJSe>M%@8Pxr1&a>A)I@O@v%{j`!M=aL|2&+2zwR$DM?&L2!4va&j6OV1Xyn(skGZIqm8#P&0;L^3T< xV_@Rgpf)>i-_Eqz`Ij`8&&rir@_b&+x0lc7S7j-@SkNMt^1.01em to avoid layout artifacts on Macs */ + font-size: 1.1em; + margin: 0px; + border-right: 1px solid #FFFFFF; + width: auto; + float: left; + display: block; + text-decoration: none; +} + +.iceMnuBarItem a:hover { /* was iceMenu */ + background-color: #2A6CC2; + color: #FFFFFF; + border-right: 1px solid #FFFFFF; +} + +.iceMnuBarItem hr { /* was iceMenu */ + border: none 0; + border-top: 1px solid #999999; + width: 100%; + height: 1px; + margin-top: 3px; + padding: 0px; + text-align: left; +} + +.iceMnuBarSubMenu { /* was iceSubMenu */ + position: absolute; + background-color: #EFEFEF; + width: 160px; + border-top: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + border-right: 1px solid #999999; + padding: 1px; + height: auto; + display: block; + z-index: 1000; +} + +.iceMnuItm { /* was iceSubMenuRow*/ + padding: 0px; + display: block; + height: auto; +} + +.iceMnuItm a { /* was iceSubMenuRow*/ + color: #333333; + display: block; + text-decoration: none; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; +} + +.iceMnuItm a:hover { /* was iceSubMenuRow*/ + background-color: #2A6CC2; +} + +.iceMnuItm a:hover .iceOutTxt, .iceMnuItm a:hover .iceMnuItmLabel{ + color: #FFFFFF; +} + +.iceMnuItmLabel, .iceMnuBarItemLabel { /* was iceSubMenuRowLabel */ + font-family: Arial, Helvetica, sans-serif; + padding-top: 4px; + font-size: 1.0em; + display: inline; + vertical-align: middle; +} + +.iceMnuBarItemImage { + width:0px; +} + +.iceMnuItmImage, .iceMnuBarItemImage { /* was iceSubMenuRowImage */ + display:inline; + vertical-align: middle; +} + +.iceMnuBarSubMenuInd { /* was iceSubMenuRowSubMenuIndicator */ + display:inline; + float:right; + padding-top: 3px; + padding-right: 1px; +} + +/* classes for the vertical version of the iceMenu*/ +.iceMnuBarVrtItemLabel {} +.iceMnuBarVrtItemImage { + width:5px; +} + +.iceMnuBarVrt { /* was iceMenu_vertical */ + float: left; + padding: 0px; + white-space: nowrap; +} + +.iceMnuBarVrtItem { /* was iceMenu_verticalItem */ + width: 160px; + display: block; +} + +.iceMnuBarVrtItem a { /* was iceMenu_verticalItem */ + background-color: #DDDDDD; + height: auto; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; + font-size: 1.1em; + margin-bottom: 1px; + float: none; + display: block; + text-decoration: none; + border: 0px solid #FFFFFF; + width: 100%; +} + +.iceMnuBarVrtItem a:hover { /* was iceMenu_verticalItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuBarVrtSubMenu { /* was iceSubMenu_vertical*/ + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border-top: 1px solid #999999; + border-right: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + position: absolute; + height: auto; + display: block; + z-index: 1000; +} + +.iceMnuItmVrt a { /* was iceMenu_vertical_subItem */ + background-color: #EFEFEF; + font-family: Arial, Helvetica, sans-serif; + color: #333333; + font-size: 1.1em; + width: auto; + display: block; + text-decoration: none; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; +} + +.iceMnuItmVrt a:hover { /* was iceMenu_vertical_subItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuBarVrtSubMenuInd { /* was iceSubMenuDividerVert */ + display:inline; + float:right; + padding-top: 3px; + padding-right: 1px; +} + +.iceMnuPopVrtItemLabel { + vertical-align: middle; +} +.iceMnuPopVrtItemImage { + width:19px; + vertical-align: middle; +} + +.iceMnuPopVrt { /* was iceMenu_vertical */ + float: left; + white-space: nowrap; + + margin: 0px; + padding: 0px; + border: 0px; + width: 0px; + height: 0px; +} +.iceMnuPopVrtTopSubMenu { + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border: 1px solid #999999; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtItem { /* was iceMenu_verticalItem */ + width: 160px; + display: block; +} + +.iceMnuPopVrtItem a { /* was iceMenu_verticalItem */ +/* background-color: #DDDDDD;*/ + height: auto; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; + font-size: 1.1em; + margin-bottom: 1px; + float: none; + display: block; + text-decoration: none; + border: 0px solid #FFFFFF; + /*width: 100%;*/ +} + +.iceMnuPopVrtItem a:hover { /* was iceMenu_verticalItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuPopVrtSubMenu { /* was iceSubMenu_vertical*/ + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border-top: 1px solid #999999; + border-right: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtSubMenuInd { /* was iceSubMenuDividerVert */ + display:inline; + float:right; + padding-top: 0px; + padding-right: 1px; +} +/* +----------- PanelPopup & panelTooltip ---------- +*/ + +.icePnlPop, .icePnlTlTip { + color: #666666; + border-right: 2px solid #ABABAB; + border-top: 1px solid #ABABAB; + border-left: 1px solid #ABABAB; + border-bottom: 2px solid #ABABAB; + background-color: #DDDDDD; + padding: 0px; + z-index: 1000; +} + +.icePnlPop .icePnlPopBody { + background-color: #DDDDDD; +} + +.icePnlPopHdr, .icePnlTlTipHdr { + background-color: #DEDEDE; + background-image: url(css-images/window_top.gif); + background-position: top; + background-repeat: repeat-x; + height: 2.0em; +} + +.icePnlPopHdr .iceOutTxt, .icePnlTlTipHdr .iceOutTxt { + color:#FFFFFF; + font-size:1.1em; + font-weight:bold; + padding:4px; + text-align:center; + vertical-align:middle; +} + +.icePnlPopBody, .icePnlTlTipBody { + padding: 10px; +} + +.icePnlPopFtr, .icePnlTlTipFtr { + float: right; + height: auto; + background-color: #DDDDDD; +} + +/* + Classes for the output progress bar +*/ + +.iceOutProgIndetActv { + background-color: #EFEFEF; + background-image: url(css-images/in_progress.gif); + background-position: center; + background-repeat: repeat-x; +} + +.iceOutProgIndetInactv { + background-color: #EFEFEF; + background-image: url(css-images/in_progress_inactive.gif); + background-position: center; + background-repeat: repeat-x; +} + +/* + Classes for the connection status indicator +*/ + +.iceOutConStat { + margin: 0px; + width: 25px; + height: 25px; + border: none; + font-size: .5em; +} + +.iceOutConStatInactv { + position: absolute; + background-image: url(css-images/connect_idle.gif); + background-position: top; + background-repeat: no-repeat; + width: 25px; + height: 25px; +} + +.iceOutConStatActv { + position: absolute; + background-image: url(css-images/connect_active.gif); + background-position: top; + background-repeat: no-repeat; + width: 25px; + height: 25px; +} + +.iceOutConStatCaution { + position: absolute; + background-image: url(css-images/connect_caution.gif); + background-position: top; + background-repeat: no-repeat; + width: 25px; + height: 25px; +} + +.iceOutConStatDisconnect { + position: absolute; + background-image: url(css-images/connect_disconnected.gif); + background-position: top; + background-repeat: no-repeat; + width: 25px; + height: 25px; +} + +/* XP Disabled styles CSS Document v1.0 mar 31 2006 */ + +.iceCmdBtn-dis { +} + +.iceCmdLnk-dis, .iceOutLnk-dis { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +.iceOutTxt-dis, .iceOutLbl-dis { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +.iceInpTxt-dis, .iceInpSecrt-dis { + font-family: Arial, Helvetica, sans-serif; + color: #ABABAB; + border: 1px dotted #CCCCCC; + cursor: default; + margin: 2px; + padding: 2px; +} + +.iceInpTxtArea-dis { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #ABABAB; + border: 1px dotted #CCCCCC; + cursor: default; + margin: 2px; + padding: 2px; +} + +.iceSelMnyCb-dis { + background-color: #CCCCCC; + padding: 2px; + margin: 2px; + cursor: default; + color: #CCCCCC; + border: none; +} + +.iceSelOneMnu-dis, .iceSelMnyLb-dis, .iceSelMnyMnu-dis, .iceSelOneLb-dis { + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + padding: 2px; + font-size: .95em; + cursor: default; + border: none; +} + +.iceSelOneRb-dis { + background-color: #CCCCCC; + padding: 2px; + margin: 2px; + cursor: default; + color: #444444; + border: none; +} + +.iceInpFileTxt-dis { + border: none; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + cursor: default; +} + +.iceInpFileBtn-dis { + border: 1px solid #CCCCCC; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + cursor: default; +} + +/* submenu disabled style classes */ +.iceSubMenuRowLabel-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; +} + +.iceSubMenuRow-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; + padding: 0px; + display: block; + height: auto; +} + +.iceSubMenuRow-dis a { + color: #333333; + text-decoration: none; + cursor: default; + display: block; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + +} + +.iceSubMenuRow-dis a:hover { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + + +/* panel tabs disabled style classes */ + +.icePnlTbOff { /* was iceTabSetTabOff*/ + +} + +.icePnlTbOff .LftTop-dis { + background-color: transparent; + background-image: url(css-images/off-left-top-dis.gif); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOff .MidTop-dis { + background-color: #DEDEDE; + background-image: url(css-images/off-mid-top-dis.gif); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .RtTop-dis { + background-color: transparent; + background-image: url(css-images/off-right-top-dis.gif); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOff .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; + +} + +.icePnlTbOff .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .LftBtm-dis { + background-color: transparent; + background-image: url(css-images/off-left-bot.gif); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOff .MidBtm-dis { + background-color: transparent; + background-image: url(css-images/off-mid-bot.gif); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOff .RtBtm-dis { + background-color: transparent; + background-image: url(css-images/off-right-bot.gif); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab off */ +.icePnlTbOffBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOffBtm .MidBtm-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOffBtm .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; + +} + +.icePnlTbOffBtm .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOffBtm .MidTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOffBtm .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab on */ + +.icePnlTbOnBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOnBtm .MidBtm-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOnBtm .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; +} + +.icePnlTbOnBtm .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOnBtm .MidTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOnBtm .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tab on disabled */ +.icePnlTbOn { + +} + +.icePnlTbOn .LftTop-dis { + background-color: transparent; + background-image: url(css-images/off-left-top-dis.gif); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOn .MidTop-dis { + background-color: #DEDEDE; + background-image: url(css-images/off-mid-top-dis.gif); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .RtTop-dis { + background-color: transparent; + background-image: url(css-images/off-right-top-dis.gif); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOn .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; +} + +.icePnlTbOn .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .LftBtm-dis { + background-color: transparent; + background-image: url(css-images/off-left-bot.gif); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOn .MidBtm-dis { + background-color: transparent; + background-image: url(css-images/off-mid-bot.gif); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOn .RtBtm-dis { + background-color: transparent; + background-image: url(css-images/off-right-bot.gif); + background-repeat: no-repeat; + border: none; +} + +/* +data scroller classes disabled styles +*/ +.sclBtnCell-dis { +/* the cells behind the scroll buttons */ + background-color: #FFFFFF; + padding: 2px; +} + +.sclBtnCell-dis img { + cursor: default; +} + +.icePaginatorTbl-dis { +/* the container for the pagination*/ + background-color: #FFFFFF; +} + +/* set the common attributes for the pagination numbers */ +.icePaginatorAtvCol-dis a, .icePaginatorCol-dis a { + text-decoration: none; + font-weight: normal; + background-color: #FFFFFF; + color: #ABABAB; + display: block; + padding-left: 5px; + padding-right: 5px; + border: 1px solid #FFFFFF; + cursor: default; +} + +/* override the attributes for the currently selected page */ +.icePaginatorAtvCol-dis a { + color: #ABABAB; + /* border:1px solid #2A6CC2; + background-color:#2A6CC2; + */ + cursor: default; +} + +/* set the attributes for the mouseover on none-current pages */ +.icePaginatorCol-dis a:hover { + /* color:#000000; + border:1px solid #2A6CC2;*/ +} + +/* +Disabled classes for the calendar controls +*/ + +.iceSelInpDate-dis { +/* calendar outline & background color */ + background-color: #FFFFFF; + border: 1px solid #DEDEDE; /* removed margin from calendar outline - better absolute positioning of popup */ +/*margin:10px;*/ +} + +.iceSelInpDateMonthYear-dis { + background-color: #EFEFEF; + /* background-image: url("./css-images/table_col_header.gif"); + background-position:bottom; + background-repeat:repeat-x;*/ + font-weight: normal; + text-align: center; + color: #999999; + padding-left: 1px; + padding-right: 1px; + padding-top: 4px; + padding-bottom: 4px; /*border-right:1px solid #CCCCCC;*/ +} + +.iceSelInpDateMoYrDropdown-dis { + background-color: #EFEFEF; + color: #999999; +} + +.iceSelInpDateMonthYear-dis img { + cursor: default; +} + +.iceSelInpDateWeek-dis { +/* the days of the week row */ + font-weight: normal; + color: #999999; + background-color: #EFEFEF; + text-align: center; + padding-left: 5px; + padding-right: 5px; + border-bottom: 1px solid #ABABAB; +} + +/* set the look for the days of the week backgrounds */ +.iceSelInpDateDay-dis, .iceSelInpDateCur-dis { +/* the background & alignment for the days */ + padding: 3px; + text-align: center; +} + +/* now set the attributes for the numbers for each day of the week */ +.iceSelInpDateDay-dis a { +/* the day text */ + text-decoration: none; + background-color: #FFFFFF; + border: 1px solid #FFFFFF; + color: #ABABAB; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +.iceSelInpDateCur-dis a { + text-decoration: none; + background-color: #ABABAB; + border: 1px solid #ABABAB; + color: #FFFFFF; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +/* +----------- commandSortHeader ---------- +*/ +.iceCmdSrtHdr { + text-decoration: none; + /*border: 1px solid #ABABAB;*/ + color: #333333; + /*width: 100%;*/ + height: 100%; + padding: 0px; + display: block; +} + +.iceCmdSrtHdr-dis { + text-decoration: none; + /*border: 1px solid #ABABAB;*/ + color: #999999; + /*width: 100%;*/ + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +.iceCmdSrtHdrAsc, .iceCmdSrtHdrDesc{ + background-repeat: no-repeat; + background-position: center; + width:10px; + height:10px; +} +.iceCmdSrtHdrAsc{ + background-image: url('./css-images/column_sort_asc.gif'); +} +.iceCmdSrtHdrDesc{ + background-image: url('./css-images/column_sort_desc.gif'); +} + +.iceCmdSrtHdr td { + white-space:nowrap; + overflow:hidden; +} + +/* IE specific CSS to enlarge clickable area of SortHeader links */ +* html .iceCmdSrtHdr { + height: 1%; +} + +/* +----------- form ---------- +*/ +.iceFrm { + +} + +/* +----------- graphicImage ---------- +*/ +.iceGphImg { + +} + +/* +----------- message ---------- +*/ +.iceMsg { + +} + +.iceMsgFatal { + +} + +.iceMsgError { + +} + +.iceMsgWarn { + +} + +.iceMsgInfo { + +} + +/* +----------- messages ---------- +*/ +.iceMsgs { + +} + +.iceMsgsFatal { + +} + +.iceMsgsError { + +} + +.iceMsgsWarn { + +} + +.iceMsgsInfo { + +} + +/* +----------- panelGrid ---------- +*/ +.icePnlGrd { + +} + +.icePnlGrdHdr { + +} + +.icePnlGrdFtr { + +} + +.icePnlGrdRow1 { + +} + +.icePnlGrdRow2 { + +} + +.icePnlGrdCol1 { + +} + +.icePnlGrdCol2 { + +} + +/* +----------- panelGroup ---------- +*/ +.icePnlGrp { + +} + +/* +----------- outputFormat ---------- +*/ +.iceOutFrmt { + +} + +/* +----------- tree ---------- +*/ +.iceTree { + +} + +.iceTreeRow { + +} + +/* +----------- panelSeries ---------- +*/ +.icePnlSrs { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlPos { + +} + +.icePnlPos-dis { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlStk {} +.icePnlStkRow {} +.icePnlStkCol {} +/* +----------- panelTab header ---------- +*/ +.icePnlTbSetHdrIconLft { + width: 14px; + height: 13px; + +} + +.icePnlTbSetHdrIconRt { + width: 14px; + height: 13px; +} + +.icePnlTbSetHdrLbl { + padding-top: 2px; + padding-bottom: 2px; + white-space: nowrap; +} + +/* +----------- Table Row Selection -------- +*/ +.iceRowSelSelected, .iceRowSelSelected td { + background-color: #316AC5; +} +.iceRowSelSelected span { + color: #FFFFFF; +} + +.iceRowSelSelectedMouseOver { + background-color: #0D4092; +} + +.portlet-section-body-hover .iceRowSelSelectedMouseOver { + background-color: #0D4092; +} +.iceRowSelSelectedMouseOver span { + color: #FFFFFF; +} + + +.iceRowSelMouseOver { + background-color: #B2CDF9; +} + +.portlet-section-alternate-hover td, .portlet-section-body-hover td { + background-color: #B2CDF9; + } + +.iceRowSelMouseOver span{ + color: #000000; +} + +/* +----------- outputChart -------- +*/ + +.iceOutChrt { + +} + +/* +----------- Panel Accordion -------- +*/ +/* opened accordion styles */ +.icePnlClpsbl, .icePnlClpsblHdr, .icePnlClpsblCnt { +} + +/* Closed */ +.icePnlClpsblColpsd, .icePnlClpsblColpsdHdr, .icePnlClpsblColpsdCnt { +} + +/* Open and disabled */ +.icePnlClpsbl-dis, .icePnlClpsblHdr-dis, .icePnlClpsblCnt-dis { +} + +/* Closed and disabled */ +.icePnlClpsblColpsd-dis, .icePnlClpsblColpsdHdr-dis, .icePnlClpsblColpsdCnt-dis{ +} + +/* common accordion headers */ +.icePnlClpsblHdr, .icePnlClpsblColpsdHdr { + background-color: #EFEFEF; + background-image: url( "./css-images/table_col_header.gif" ); + background-position: bottom; + background-repeat: repeat-x; + font-weight: bold; + text-align: left; + color: #000; + border: 1px solid #CCCCCC; + border-bottom: none; + padding-left: 2px; + padding-right: 5px; + padding-top: 4px; + padding-bottom: 4px; + cursor: pointer; +} + +.icePnlClpsblHdr .iceOutTxt, .icePnlClpsblColpsdHdr .iceOutTxt { + color: #000; +} + +.icePnlClpsblCnt, .icePnlClpsblColpsdCnt, +.icePnlClpsblColpsdCnt-dis, .icePnlClpsblCnt-dis { + background-color: #EFEFEF; + border: 1px solid #CCCCCC; + border-top: none; + padding-left: 5px; + padding-right: 5px; + color: #000; +} + +.icePnlClpsblHdr-dis, .icePnlClpsblColpsdHdr-dis { + background: #EFEFEF url( './css-images/table_col_header_dis.gif' ) repeat-x bottom; + font-weight: bold; + text-align: left; + color: #999; + border: 1px solid #CCCCCC; + border-bottom: none; + padding-left: 2px; + padding-right: 5px; + padding-top: 4px; + padding-bottom: 4px; + cursor: default; +} + +.icePnlClpsblHdr-dis .iceOutTxt, .icePnlClpsblColpsdHdr-dis .iceOutTxt { + color: #999; +} + +.icePnlClpsblColpsdCnt-dis, .icePnlClpsblCnt-dis, +.icePnlClpsblColpsdCnt-dis .iceOutTxt, .icePnlClpsblCnt-dis .iceOutTxt { + color: #999; +} + +.iceGmp{ + border-collapse:collapse; + border-spacing:0px; + padding:0px; +} + +.iceGmpMapTd { + vertical-align: top; +} + +.iceGmpMapTd div.gmap{ + width:300px; + height:300px; +} + +.iceInpRchTxt { + width:100%; +} + +/* panel divider */ +.icePnlDvr, .icePnlDvrHor { + width:300px; + height:300px; +} + +.icePnlDvrCnt, .icePnlDvrHorCnt { + border: 1px solid #ABABAB; + /*width:100%; */ + height:100%; +} + +.icePnlDvrFst, .icePnlDvrSnd{ + height:100%; + display:block; + float:left; + overflow:auto; +} + +.icePnlDvrSpt { + width:2px; + height:100%; + display:inline; + background-color: #EFEFEF; + border-left: 1px solid #ABABAB; + border-right: 1px solid #ABABAB; + float:left; + cursor: e-resize; +} + +.icePnlDvrHorFst, .icePnlDvrHorSnd{ + width:100%; + display:block; + overflow:auto; + display:block; +} + +.icePnlDvrHorSpt { + width:100%; + height:2px; + background-color: #EFEFEF; + border-top: 1px solid #ABABAB; + border-bottom: 1px solid #ABABAB; + cursor: n-resize; +} + +/* +----------- PanelConfirmation ---------- +*/ + +.icePnlCnf { + border-top: 1px solid #ABABAB; + border-right: 2px solid #ABABAB; + border-left: 1px solid #ABABAB; + border-bottom: 2px solid #ABABAB; + background-color: #DDDDDD; + padding: 0; + width: 300px; + z-index: 1000; + color: #000000; + font-family: Arial, Helvetica, sans-serif; +} + +.icePnlCnfHdr { + background-color: #DEDEDE; + background-image: url( "./css-images/window_top.gif" ); + background-position: top; + background-repeat: repeat-x; + height: auto; + color: #FFFFFF; + font-size: 1em; + font-weight: bold; + padding: 4px; + text-align: left; + vertical-align: middle; +} + +.icePnlCnfBody { + padding: 10px 10px 5px 10px; + background-color: #DDDDDD; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns { + padding: 5px 10px 10px 10px; + background-color: #DDDDDD; + text-align: center; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns input { + margin: 0 20px 0 20px; +} diff --git a/Music_List/WebRoot/xmlhttp/css/xp/xp.css b/Music_List/WebRoot/xmlhttp/css/xp/xp.css new file mode 100644 index 0000000..b864eb7 --- /dev/null +++ b/Music_List/WebRoot/xmlhttp/css/xp/xp.css @@ -0,0 +1,2905 @@ +/* + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * "The contents of this file are subject to the Mozilla Public License + * Version 1.1 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + * License for the specific language governing rights and limitations under + * the License. + * + * The Original Code is ICEfaces 1.5 open source software code, released + * November 5, 2006. The Initial Developer of the Original Code is ICEsoft + * Technologies Canada, Corp. Portions created by ICEsoft are Copyright (C) + * 2004-2006 ICEsoft Technologies Canada, Corp. All Rights Reserved. + * + * Contributor(s): _____________________. + * + * Alternatively, the contents of this file may be used under the terms of + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL" + * License), in which case the provisions of the LGPL License are + * applicable instead of those above. If you wish to allow use of your + * version of this file only under the terms of the LGPL License and not to + * allow others to use your version of this file under the MPL, indicate + * your decision by deleting the provisions above and replace them with + * the notice and other provisions required by the LGPL License. If you do + * not delete the provisions above, a recipient may use your version of + * this file under either the MPL or the LGPL License." + * + */ + +/* Basic CSS styles This stylesheet is intended to match the style of the default Windows XP UI */ +/* Default CSS styles. These styles override the basic HTML tags on the page */ +/* Version received from KF Apr 01 2006 v1.2 */ + +/* +=================== Font Family, Size and Color ============== +*/ + +/* set the attributes for the font family, size and color for ALL elements on the page */ +/* make the fonts inside tables and forms == the default size of the page */ +body, table { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #000000; +} + +/* now set the size and other attributes of the fonts for any of the form elements for non-ICE form elements. (note this will also affect any ICE components that render out any of the following HTML tags */ +input, textarea, select { +} + +/* +=================== HTML Form Element Appearence ============== +*/ + +/* set the style elements for any of the textarea form elements */ +textarea { + +} + +/* set the style elements for any of the select form elements */ +select { + +} + +/* set the style elements for any of the input form elements */ +input { + +} + +fieldset { + border: 0px none ; +} +/* +=================== Style class definitions for ICE Standard Extended Component Appearance ============== +*/ +.iceInpTxt, .iceInpSecrt, .iceInpTxtArea { + border: 1px solid #ABABAB; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; +} + +.iceSelMnyCb { + white-space: nowrap; +} + +.iceSelMnyCb input, .iceSelOneRb input, .iceSelBoolChkbx { + margin: 2px; + padding: 2px; +} + +.iceSelOneRb table tr td { + padding: 1px; +} + +.iceInpTxt, .iceInpSecrt { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding: 2px; +} + +.iceSelOneMnu, .iceSelMnyLb, .iceSelMnyMnu, .iceSelOneLb { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding: 2px; + margin: 2px; +} + +.iceInpTxtArea { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding: 2px; +} + +.iceCmdLnk, .iceOutLnk { + text-decoration: none; + font-weight: normal; + color: #333333; +} + +.iceOutTxt, .iceOutLbl { + font-family: Arial, Helvetica, sans-serif; + color: #000000; + padding-left: 0px; + padding-right: 0px; + padding-top: 2px; + padding-bottom: 2px; +} + +.iceCmdBtn { + font-family: Arial, Helvetica, sans-serif; +} + +/* +=================== ICE Component Appearence ============== +*/ +/* +----------- Calendar Component classes +*/ +.iceSelInpDate { +/* calendar outline & background color */ + background-color: #FFFFFF; + border: 1px solid #ABABAB; /* removed margin from calendar outline - better absolute positioning of popup */ +/*margin:10px;*/ +} + +.iceSelInpDateIFrameFix, .iceIEIFrameFix { + z-index: -1; + position: absolute; + display: block; + filter: mask(); +} + +.iceSelInpDatePopup { + min-width: 172px; +} + +.iceSelInpDateInput { + width: 150px; + margin: 2px; +} + +.iceSelInpDateOpenPopup { + display: inline; + text-decoration: none; + background-color: transparent; + background-image: url( "./css-images/cal_button.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 16px; + height: 16px; +} + +.iceSelInpDateClosePopup { + display: inline; + text-decoration: none; + background-color: transparent; + background-image: url( "./css-images/cal_off.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 16px; + height: 16px; +} + +.iceSelInpDateMonthYear, .iceSelInpDateTime{ + background-color: #EFEFEF; + background-image: url( "./css-images/table_col_header.gif" ); + background-position: bottom; + background-repeat: repeat-x; + font-weight: normal; + text-align: center; + color: #000000; + padding-left: 1px; + padding-right: 1px; + padding-top: 4px; + padding-bottom: 4px; /*border-right:1px solid #CCCCCC;*/ +} + +.iceSelInpDateTime{ + border-left: 1px solid #ABABAB; + border-bottom: 1px solid #ABABAB; + border-right: 1px solid #ABABAB; +} + +.iceSelInpDateMoYrDropdown, .iceSelInpDateTimeDropDown { + background-color: #EFEFEF; + font-weight: bold; + color: #000000; +} + +.iceSelInpDateMonthYear img { + border: none; +} + +.iceSelInpDateMovePrev { + text-decoration: none; + display: inline; + background-color: transparent; + background-image: url( "./css-images/cal_arrow_left.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 17px; + height: 16px; +} + +.iceSelInpDateMoveNext { + text-decoration: none; + display: inline; + background-color: transparent; + background-image: url( "./css-images/cal_arrow_right.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; + width: 17px; + height: 16px; +} + +.iceSelInpDateWeek { +/* the days of the week row */ + font-weight: normal; + color: #2A6CC2; + text-align: center; + padding-left: 5px; + padding-right: 5px; + border-bottom: 1px solid #000000; +} + +/* set the look for the days of the week backgrounds */ +.iceSelInpDateDay, .iceSelInpDateCur { +/* the background & alignment for the days */ + padding: 3px; + text-align: center; +} + +.iceSelInpDateCur .iceOutTxt{ + color:#FFFFFF; +} + +/* now set the attributes for the numbers for each day of the week */ +.iceSelInpDateDay a { +/* the day text */ + text-decoration: none; + background-color: #FFFFFF; + border: 1px solid #FFFFFF; + color: #000000; + width: 100%; + height: 100%; + padding: 0px; + display: block; +} + +.iceSelInpDateCur a { + text-decoration: none; + background-color: #2A6CC2; + border: 1px solid #2A6CC2; + color: #FFFFFF; + width: 100%; + height: 100%; + padding: 0px; + display: block; +} + +/* now set the color attributes for the hover effect on non-current days */ +.iceSelInpDateDay a:hover { +/* the day text */ + text-decoration: none; + color: #2A6CC2; +} + +/* +----------- Data Table Component classes +*/ +.iceDatTbl { /* was iceDataTblOutline */ + background-color: #FFFFFF; + border: 1px solid #ABABAB; + margin: 10px; +} + +.iceDatTbl table{ + border-collapse:collapse; +} + +.iceDatTblColHdr , .iceDatTblColHdr1, .iceDatTblColHdr2, .iceDatTblColGrpHdrCol, .iceDatTblFtr{ +/* was iceTblHeader */ + background-color: #EFEFEF; + background-image: url( "./css-images/table_col_header.gif" ); + background-position: bottom; + background-repeat: repeat-x; + font-weight: normal; + text-align: center; + color: #000000; + border-right: 1px solid #CCCCCC; + border-top: 1px solid #CCCCCC; + padding-left: 5px; + padding-right: 5px; + padding-top: 4px; + padding-bottom: 4px; +} + +.iceDatTblResHdlr { + margin:0px;; + padding:0px; + border-width: 0px; + width:2px; + background-color:transparent; + +} + +.iceDatTblResBor { + margin:0px;; + padding:0px; + background-color: #EFEFEF; + background-position: bottom; + background-repeat: repeat-x; + width:2px; +} + +.iceDatTblBlkTd { + border-bottom: 1px solid #CCCCCC; + background-color: #EFEFEF; +} + /* data tables are rendered with alternating row colors */ +.iceDatTblRow1 { /* was iceTblRow1 */ + background-color: #FFFFFF; +} + +.iceDatTblRow2 { /* was iceTblRow2 */ + background-color: #FFFFFF; +} + +/* set the common attributes for the column classes */ +.iceDatTblCol, .iceDatTblCol1, .iceDatTblCol2{ +/*was column, column1, column2, column3*/ + color: #000000; + padding-left: 5px; + padding-right: 5px; + padding-top: 3px; + padding-bottom: 3px; + border-right: 1px solid #CCCCCC; + border-bottom: 1px solid #CCCCCC; + text-align:left; +} + +.iceDatTblHdr{} /*was iceTblHeader */ +.iceDatTblFtr { + background: none; + border-top: 1px solid #CCCCCC; +} + +.iceDatTblScrlSpr{ + background: url( './css-images/table_col_header.gif' ) repeat-x bottom left; + background-color: #EFEFEF; + border-top: 1px solid #CCCCCC; + border-right: 1px solid #CCCCCC; +} + +.iceDatTblScrlSprFtr{ + border-bottom: 1px solid #CCCCCC; + border-right: 1px solid #CCCCCC; +} + +.iceDatTblScrlSprFtr .iceDatTblFtr{ + border-bottom: none; +} + +.iceDatTblScrlSpr .iceDatTblColHdr1, .iceDatTblScrlSpr .iceDatTblColHdr2 { + border-left-style: none; + border-top-style: none; +} + +.iceDatTblActvSrtHdr{} +/* +----- for datatable when cell content length exceeds----- +*/ + +.iceDatTbl td span.iceOutTxt{ + overflow: hidden; + display: block; + padding: 2px 0px; +} + +/* etc */ + +/* +----------- Data Scroller Component classes +*/ +.iceDatPgrScrOut { +/* the class for the outside table */ + background-color: #FFFFFF; + margin: 10px; +} + +.iceDatPgrScrBtn { +/* the cells behind the scroll buttons */ + background-color: #FFFFFF; + padding: 2px; +} + +.iceDatPgrScrBtn .iceCmdLnk-dis { + border-bottom:none; +} + +.iceDatPgrTbl { +/* the container for the pagination*/ + background-color: #FFFFFF; +} + +/* set the common attributes for the pagination numbers */ +.iceDatPgrScrCol a, .iceDatPgrCol a { + text-decoration: none; + font-weight: normal; + background-color: #FFFFFF; + color: #666666; + display: block; + padding-left: 5px; + padding-right: 5px; + border: 1px solid #FFFFFF; +} + +* html .iceDatPgrCol a { + width: 1%; +} + +/* override the attributes for the currently selected page */ +.iceDatPgrScrCol a { + color: #FFFFFF; + border: 1px solid #2A6CC2; + background-color: #2A6CC2; +} + +* html .iceDatPgrScrCol a { + width: 1%; +} + +/* set the attributes for the mouseover on none-current pages */ +.iceDatPgrCol a:hover { + color: #000000; + border: 1px solid #2A6CC2; +} + +/* +----------- File Tree Component classes +*/ +.fileTreeOutlineClass { + background-color: #FFFFFF; + border: 1px solid #ABABAB; + margin: 10px; +} + +.nodeClass { + background-color: #FFFFFF; + padding-left: 3px; +} + +.footerClass { + border-top: 1px solid #ABABAB; + color: #666666; + padding: 4px; +} + +.treeTableHdrClass { + +} + +/* +----------- Tabbed Pane Component classes +*/ + +/* tabOn style classes */ + +.icePnlTbOn { /* was iceTabSetTabOn */ +} + +.icePnlTbOn .MidMid td{ + font-weight: bold; + white-space: nowrap; + text-align: center; +} + +.icePnlTbOn .LftTop { + background-color: transparent; + background-image: url( "./css-images/on-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .MidTop { + background-color: transparent; + background-image: url( "./css-images/on-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .RtTop { + background-color: transparent; + background-image: url( "./css-images/on-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .LftMid { + background-color: transparent; + background-image: url( "./css-images/on-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .MidMid { + background-color: transparent; + background-image: url( "./css-images/on-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOn .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + + +* html .icePnlTbOn .MidMid a { + width: 1%; +} + +.icePnlTbOn .RtMid { + background-color: transparent; + background-image: url( "./css-images/on-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOn .LftBtm { + background-color: transparent; + background-image: url( "./css-images/on-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOn .MidBtm { + background-color: transparent; + background-image: url( "./css-images/on-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOn .RtBtm { + background-color: transparent; + background-image: url( "./css-images/on-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tabOff style classes */ + +.icePnlTbOff { /* was iceTabSetTabOff*/ + +} + +.icePnlTbOff .MidMid td{ + white-space: nowrap; + text-align: center; +} + +.icePnlTbOff .LftTop { + background-color: transparent; + background-image: url( "./css-images/off-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .MidTop { + background-color: transparent; + background-image: url( "./css-images/off-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .RtTop { + background-color: transparent; + background-image: url( "./css-images/off-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .LftMid { + background-color: transparent; + background-image: url( "./css-images/off-left-mid.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .MidMid { + background-color: transparent; + background-image: url( "./css-images/off-mid-mid.gif" ); + background-repeat: repeat-x; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOff .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOff .MidMid a { + width: 1%; +} + +.icePnlTbOff .RtMid { + background-color: transparent; + background-image: url( "./css-images/off-right-mid.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOff .LftBtm { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOff .MidBtm { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOff .RtBtm { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tabOver style classes */ + +.icePnlTbOver { /* was iceTabSetTabOver */ + +} + +.icePnlTbOver .MidMid td{ + white-space: nowrap; + text-align: center; +} + + +.icePnlTbOver .LftTop { + background-color: transparent; + background-image: url( "./css-images/over-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .MidTop { + background-color: transparent; + background-image: url( "./css-images/over-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .RtTop { + background-color: transparent; + background-image: url( "./css-images/over-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .LftMid { + background-color: transparent; + background-image: url( "./css-images/over-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .MidMid { + background-color: transparent; + background-image: url( "./css-images/over-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOver .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOver .MidMid a { + width: 1%; +} + +.icePnlTbOver .RtMid { + background-color: transparent; + background-image: url( "./css-images/over-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOver .LftBtm { + background-color: transparent; + background-image: url( "./css-images/over-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOver .MidBtm { + background-color: transparent; + background-image: url( "./css-images/over-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOver .RtBtm { + background-color: transparent; + background-image: url( "./css-images/over-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tabSpacer */ + +.icePnlTbSetSpcr { + width: 100%; + border-bottom: 1px solid #ABABAB; +} + +/* tabPanel */ +.icePnlTbSet { /* was iceTabSet*/ + width: 100%; +} + +.icePnlTbSetCnt { /*newly added class*/ + padding-top: 10px; + padding-left: 10px; + padding-right: 10px; + padding-bottom: 10px; + border-right: 1px solid #ABABAB; + border-bottom: 1px solid #ABABAB; + border-left: 1px solid #ABABAB; + background-color: #FFFFFF; +} + +.icePnlTbSetCntBtm { /*was iceTabSetBottom*/ + padding-top: 10px; + padding-left: 10px; + padding-right: 10px; + padding-bottom: 10px; + border-right: 1px solid #ABABAB; + border-top: 1px solid #ABABAB; + border-left: 1px solid #ABABAB; + background-color: #FFFFFF; +} + +/* TABS ON BOTTOM STYLE CLASSES */ +/* tabOn style classes */ + +.icePnlTbOnBtm { + +} + +.icePnlTbOnBtm .MidMid td{ + font-weight: bold; + white-space: nowrap; + text-align: center; +} + +.icePnlTbOnBtm .LftTop { + background-color: transparent; + background-image: url( "./css-images/tbot-on-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOnBtm .MidTop { + background-color: transparent; + background-image: url( "./css-images/tbot-on-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + border: none; +} + +.icePnlTbOnBtm .RtTop { + background-color: transparent; + background-image: url( "./css-images/tbot-on-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOnBtm .LftMid { + background-color: transparent; + background-image: url( "./css-images/on-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOnBtm .MidMid { + background-color: transparent; + background-image: url( "./css-images/on-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOnBtm .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOnBtm .MidMid a { + width: 1%; +} + +.icePnlTbOnBtm .RtMid { + background-color: transparent; + background-image: url( "./css-images/on-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOnBtm .LftBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-on-left-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOnBtm .MidBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-on-mid-bot.gif" ); + background-repeat: repeat-x; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOnBtm .RtBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-on-right-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +/* tabOff style classes */ + +.icePnlTbOffBtm { /* was iceTabSetTabOffBottom*/ + +} + +.icePnlTbOffBtm .MidMid td{ + white-space: nowrap; + text-align: center; +} + +.icePnlTbOffBtm .LftTop { + background-color: transparent; + background-image: url( "./css-images/tbot-off-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOffBtm .MidTop { + background-color: transparent; + background-image: url( "./css-images/tbot-off-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + border: none; +} + +.icePnlTbOffBtm .RtTop { + background-color: transparent; + background-image: url( "./css-images/tbot-off-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOffBtm .LftMid { + background-color: transparent; + background-image: url( "./css-images/off-left-mid.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOffBtm .MidMid { + background-color: transparent; + background-image: url( "./css-images/off-mid-mid.gif" ); + background-repeat: repeat-x; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOffBtm .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOffBtm .MidMid a { + width: 1%; +} + +.icePnlTbOffBtm .RtMid { + background-color: transparent; + background-image: url( "./css-images/off-right-mid.gif" ); + background-repeat: no-repeat; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOffBtm .LftBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-off-left-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOffBtm .MidBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-off-mid-bot.gif" ); + background-repeat: repeat-x; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOffBtm .RtBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-off-right-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +/* tabOver style classes */ + +.icePnlTbOverBtm { /* was iceTabSetTabOverBottom*/ + +} + +.icePnlTbOverBtm .MidMid td{ + white-space: nowrap; + text-align: center; +} + + +.icePnlTbOverBtm .LftTop { + background-color: transparent; + background-image: url( "./css-images/tbot-over-left-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOverBtm .MidTop { + background-color: transparent; + background-image: url( "./css-images/tbot-over-mid-top.gif" ); + background-repeat: repeat-x; + text-align: center; + border: none; +} + +.icePnlTbOverBtm .RtTop { + background-color: transparent; + background-image: url( "./css-images/tbot-over-right-top.gif" ); + background-repeat: no-repeat; + text-align: center; + border: none; +} + +.icePnlTbOverBtm .LftMid { + background-color: transparent; + background-image: url( "./css-images/over-left-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOverBtm .MidMid { + background-color: transparent; + background-image: url( "./css-images/over-mid-mid.gif" ); + background-repeat: repeat; + text-align: center; + border: none; + white-space: nowrap; +} + +.icePnlTbOverBtm .MidMid a { + text-decoration: none; + color: #000000; + cursor: pointer; + display: block; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; +} + +* html .icePnlTbOverBtm .MidMid a { + width: 1%; +} + +.icePnlTbOverBtm .RtMid { + background-color: transparent; + background-image: url( "./css-images/over-right-mid.gif" ); + background-repeat: repeat-y; + text-align: center; + padding-top: 5px; + border: none; +} + +.icePnlTbOverBtm .LftBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-over-left-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOverBtm .MidBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-over-mid-bot.gif" ); + background-repeat: repeat-x; + padding-bottom: 5px; + border: none; +} + +.icePnlTbOverBtm .RtBtm { + background-color: transparent; + background-image: url( "./css-images/tbot-over-right-bot.gif" ); + background-repeat: no-repeat; + padding-bottom: 5px; + border: none; +} + +/* tabSpacer */ +.icePnlTbSetSpcrBtm { + width: 100%; + border-top: 1px solid #ABABAB; +} + +/* tabPanel */ + +.icePnlTbSetBtm { + padding-top: 10px; + padding-left: 10px; + padding-right: 10px; + padding-bottom: 10px; + border-right: 1px solid #ABABAB; + border-top: 1px solid #ABABAB; + border-left: 1px solid #ABABAB; + background-color: #FFFFFF; +} + +/* +------------- BorderLayout +*/ +.icePnlBrdrNorth { + font-weight: bold; + height: 80px; + background-color: #FFFFFF; + padding: 5px; + text-align: center; +} + +.icePnlBrdrEast { + width: 10%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.icePnlBrdrWest { + width: 20%; + background-color: #FFFFFF; + vertical-align: top; +} + +.icePnlBrdrCenter { + width: 70%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.icePnlBrdrSouth { + background-color: #FFFFFF; + border-top: 1px solid #FFFFFF; + color: #666666; + padding: 4px; +} + +/* +------------- PanelLayout +*/ + +.pageHdr { + font-weight: bold; + height: 80px; + background-color: #CDCDCD; + padding: 5px; + text-align: center; +} + +.icePnlBrdrStyle { + background-color: #FFFFFF; + border: 1px solid #ABABAB; + margin: 10px; + width: 97%; +} + +.pageNavigation { + width: 20%; + background-color: #DEDEDE; + padding: 5px; + vertical-align: top; +} + +.pageBody { + width: 80%; + background-color: #FFFFFF; + padding: 5px; + vertical-align: top; +} + +.pageFtr { + border-top: 1px solid #ABABAB; + color: #666666; + padding: 4px; +} + +/* +------------ PanelNavigation +*/ + +.navFormOutline { + background-color: #DEDEDE; + margin: 0px; + width: 100%; + padding: 0px; +} + +.navItem, .navActvItem, .navOpenItem { + color: #333333; + text-decoration: none; + background-color: #CDCDCD; + width: 100%; + border: 1px solid #CDCDCD; + border-bottom: 1px solid #FFFFFF; + padding-top: 3px; + padding-bottom: 3px; + padding-left: 5px; + padding-right: 1px; + display: block; +} + +.navItem:hover, .navActvItem:hover, .navOpenItem:hover { + background-color: #FFFFFF; + color: #000000; + border: 1px solid #2A6CC2; +} + +.navOpenItem { + white-space: nowrap; + text-decoration: none; + font-weight: bold; +} + +.navActvItem { + width: 100%; + background-color: #2A6CC2; + color: #FFFFFF; + background-image: url( ./css-images/cal_arrow_right.gif ); + background-position: center right; + background-repeat: no-repeat; +} + +.navSeparator { + width: 100%; + height: 1px; + padding: 0px; + margin: 0px; + background-color: #CDCDCD; + border-bottom: 1px solid #DEDEDE; +} + +/* +--------------- Progress bar +*/ +.iceOutProg { + margin: 10px; +} + +.iceOutProgBg { + border: 1px solid #ABABAB; + width: 300px; + height: 13px; +} + +.iceOutProgFill { + background-color: #026AFF; /* background-image:url(./css-images/window_top.gif);*/ + background-position: top left; + background-repeat: repeat-x; + display: block; +} + +.iceOutProgTxt { + color: black; +} + +/* +--------------- autoComplete classes ------ +*/ + +.iceSelInpTxtTxt { + border: 1px solid #ABABAB; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; +} + +.iceSelInpTxtList { + position: absolute; + display: block; + border-top: 1px solid #ABABAB; + border-right: 1px solid #666666; + border-left: 1px solid #ABABAB; + border-bottom: 1px solid #333333; +} + +.iceSelInpTxtRow { + display: block; + background-color: #FFFFFF; + color: #333333; + padding: 2px; + padding-left: 10px; + border-bottom: 1px solid #DEDEDE; + position: relative; +} + +.iceSelInpTxtSelRow { + display: block; + background-color: #2A6CC2; + color: #FFFFFF; + padding: 2px; + padding-left: 10px; + border-bottom: 1px solid #FFFFFF; + position: relative; +} + +.iceSelInpTxtSelRow span{ + color: #FFFFFF; +} + +/* +--------------- autoComplete disable class ------ +*/ + +.iceSelInpTxtTxt-dis { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #ABABAB; + border: 1px dotted #CCCCCC; + cursor: default; +} + +/* +----------- FileUpload Component classes +*/ +.iceInpFile { + overflow: hidden; +} +.iceInpFileTxt { + border: 1px solid #ABABAB; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + + color: #000000; +} + +.iceInpFileBtn { + border: 1px solid #ABABAB; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + + color: #000000; +} + +/* +----------- Data Navigation Bar classes +*/ + +.tablebg { + background-color: #EEF3FB; + border: 1px solid #6392C6; + width: 70%; +} + +.oddRow { + background-color: #FFFFFF; +} + +.evenRow { + background-color: #EEF3FB; +} + +.barCol1 { + width: 40%; + text-align: left; +} + +.barCol2 { + width: 15%; + text-align: left; +} + +.barCol3 { + width: 20%; + text-align: left; +} + +.barCol4 { + width: 15%; + text-align: right; +} + +.barCol5 { + width: 15%; + text-align: left; +} + +/* +----------- TreeView component +*/ + +.iceTreeRow { + white-space: nowrap; + padding: 0px; +} + +.iceTreeRow a { + text-decoration: none; + color: #000000; + cursor: pointer; + padding: 0px; + vertical-align: middle; +} + +.iceTreeRow a:hover { + text-decoration: underline; +} + +.iceTreeRow img { + border: 0px; + vertical-align: top; + background-repeat: repeat-y; + padding: 0px; +} + +.iceTreeRow div { + padding: 0px; +} + +.iceTreeRow a img { +/* vertical-align: top; - Bug in FF, when img has focus it is not highlighted with a box.*/ + background-repeat: repeat-y; + border: 0px; + padding: 0px; +} + +/* ------------ Menu Classes -- +*/ + +.iceMnuBar { /*no change*/ + padding: 0px; + white-space: nowrap; +} + +.iceMnuBarItem { /* was iceMenu */ + float: left; + padding: 0px; + white-space: nowrap; +} + +.iceMnuBarItem a { /* was iceMenu */ + background-color: #DDDDDD; + height: auto; + padding-left: 10px; + padding-right: 10px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; /* Must be >1.01em to avoid layout artifacts on Macs */ + font-size: 1.1em; + margin: 0px; + border-right: 1px solid #FFFFFF; + width: auto; + float: left; + display: block; + text-decoration: none; +} + +.iceMnuBarItem a:hover { /* was iceMenu */ + background-color: #2A6CC2; + color: #FFFFFF; + border-right: 1px solid #FFFFFF; +} + +.iceMnuBarItem hr { /* was iceMenu */ + border: none 0; + border-top: 1px solid #999999; + width: 100%; + height: 1px; + margin-top: 3px; + padding: 0px; + text-align: left; +} + +.iceMnuBarSubMenu { /* was iceSubMenu */ + position: absolute; + background-color: #EFEFEF; + width: 160px; + border-top: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + border-right: 1px solid #999999; + padding: 1px; + height: auto; + display: block; + z-index: 1000; +} + +.iceMnuItm { /* was iceSubMenuRow*/ + padding: 0px; + display: block; + height: auto; +} + +.iceMnuItm a { /* was iceSubMenuRow*/ + color: #333333; + display: block; + text-decoration: none; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; +} + +.iceMnuItm a:hover { /* was iceSubMenuRow*/ + background-color: #2A6CC2; +} + +.iceMnuItm a:hover .iceOutTxt, .iceMnuItm a:hover .iceMnuItmLabel{ + color: #FFFFFF; +} + +.iceMnuItmLabel, .iceMnuBarItemLabel { /* was iceSubMenuRowLabel */ + font-family: Arial, Helvetica, sans-serif; + padding-top: 4px; + font-size: 1.0em; + display: inline; + vertical-align: middle; +} + +.iceDatTbl td span.iceMnuItmLabel { + display: inline; + padding: 4px 0 0 0; +} + +.iceMnuBarItemImage { + width:0px; +} + +.iceMnuItmImage, .iceMnuBarItemImage { /* was iceSubMenuRowImage */ + display:inline; + vertical-align: middle; +} + +.iceMnuBarSubMenuInd { /* was iceSubMenuRowSubMenuIndicator */ + display:inline; + float:right; + padding-top: 3px; + padding-right: 1px; +} + +/* classes for the vertical version of the iceMenu*/ + +.iceMnuBarVrtItemLabel {} +.iceMnuBarVrtItemImage { + width:5px; +} + +.iceMnuBarVrt { /* was iceMenu_vertical */ + float: left; + padding: 0px; + white-space: nowrap; +} + +.iceMnuBarVrtItem { /* was iceMenu_verticalItem */ + width: 160px; + display: block; +} + +.iceMnuBarVrtItem a { /* was iceMenu_verticalItem */ + background-color: #DDDDDD; + height: auto; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; + font-size: 1.1em; + margin-bottom: 1px; + float: none; + display: block; + text-decoration: none; + border: 0px solid #FFFFFF; + width: 100%; +} + +.iceMnuBarVrtItem a:hover { /* was iceMenu_verticalItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuBarVrtSubMenu { /* was iceSubMenu_vertical*/ + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border-top: 1px solid #999999; + border-right: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + position: absolute; + height: auto; + display: block; + z-index: 1000; +} + +.iceMnuItmVrt a { /* was iceMenu_vertical_subItem */ + background-color: #EFEFEF; + font-family: Arial, Helvetica, sans-serif; + color: #333333; + font-size: 1.1em; + width: auto; + display: block; + text-decoration: none; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; +} + +.iceMnuItmVrt a:hover { /* was iceMenu_vertical_subItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuBarVrtSubMenuInd { /* was iceSubMenuDividerVert */ + display:inline; + float:right; + padding-top: 3px; + padding-right: 1px; +} + +/* +----------- PanelPopup ---------- +*/ + +.iceMnuPopVrtItemLabel { + vertical-align: middle; +} +.iceMnuPopVrtItemImage { + width:19px; + vertical-align: middle; +} + +.iceMnuPopVrt { /* was iceMenu_vertical */ + float: left; + white-space: nowrap; + + margin: 0px; + padding: 0px; + border: 0px; + width: 0px; + height: 0px; +} +.iceMnuPopVrtTopSubMenu { + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border: 1px solid #999999; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtItem { /* was iceMenu_verticalItem */ + width: 160px; + display: block; +} + +.iceMnuPopVrtItem a { /* was iceMenu_verticalItem */ +/* background-color: #DDDDDD;*/ + height: auto; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + color: #333333; + font-size: 1.1em; + margin-bottom: 1px; + float: none; + display: block; + text-decoration: none; + border: 0px solid #FFFFFF; + /*width: 100%;*/ +} + +.iceMnuPopVrtItem a:hover { /* was iceMenu_verticalItem */ + background-color: #2A6CC2; + color: #FFFFFF; + text-decoration: none; +} + +.iceMnuPopVrtSubMenu { /* was iceSubMenu_vertical*/ + padding: 1px; + width: 160px; + background-color: #EFEFEF; + border-top: 1px solid #999999; + border-right: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + position: absolute; + height: auto; + display: block; +} + +.iceMnuPopVrtSubMenuInd { /* was iceSubMenuDividerVert */ + display:inline; + float:right; + padding-top: 0px; + padding-right: 1px; +} + +/* +----------- PanelPopup & panelTooltip ---------- +*/ + +.icePnlPop, .icePnlTlTip { + color: #666666; + border-right: 2px solid #ABABAB; + border-top: 1px solid #ABABAB; + border-left: 1px solid #ABABAB; + border-bottom: 2px solid #ABABAB; + background-color: #DDDDDD; + padding: 0px; + z-index: 1000; +} + +.icePnlPop .icePnlPopBody { + background-color: #DDDDDD; +} + +.icePnlPopHdr, .icePnlTlTipHdr { + background-color: #DEDEDE; + background-image: url( "./css-images/window_top.gif" ); + background-position: top; + background-repeat: repeat-x; + height: 2.0em; +} + +.icePnlPopHdr .iceOutTxt, .icePnlTlTipHdr .iceOutTxt { + color:#FFFFFF; + font-size:1.1em; + font-weight:bold; + padding:4px; + text-align:center; + vertical-align:middle; +} + +.icePnlPopBody, .icePnlTlTipBody { + padding: 10px; +} + +.icePnlPopFtr, .icePnlTlTipFtr { + float: right; + height: auto; + background-color: #DDDDDD; +} + +/* + Classes for the output progress bar +*/ + +.iceOutProgIndetActv { + background-color: #EFEFEF; + background-image: url( css-images/in_progress.gif ); + background-position: center; + background-repeat: repeat-x; +} + +.iceOutProgIndetInactv { + background-color: #EFEFEF; + background-image: url( css-images/in_progress_inactive.gif ); + background-position: center; + background-repeat: repeat-x; +} + +/* + Classes for the connection status indicator +*/ + +.iceOutConStat { + margin: 10px; + width: 25px; + height: 25px; + border: none; + font-size: .5em; +} + +.iceOutConStatInactv { + position: absolute; + background-image: url( css-images/connect_idle.gif ); + background-position: top; + background-repeat: no-repeat; + width: 25px; + height: 25px; +} + +.iceOutConStatActv { + position: absolute; + background-image: url( css-images/connect_active.gif ); + background-position: top; + background-repeat: no-repeat; + width: 25px; + height: 25px; +} + +.iceOutConStatCaution { + position: absolute; + background-image: url( css-images/connect_caution.gif ); + background-position: top; + background-repeat: no-repeat; + width: 25px; + height: 25px; +} + +.iceOutConStatDisconnect { + position: absolute; + background-image: url( css-images/connect_disconnected.gif ); + background-position: top; + background-repeat: no-repeat; + width: 25px; + height: 25px; +} + +/* XP Disabled styles CSS Document v1.0 mar 31 2006 */ + +.iceCmdBtn-dis { +} + +.iceCmdLnk-dis, .iceOutLnk-dis { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +.iceOutTxt-dis, .iceOutLbl-dis { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + +.iceInpTxt-dis, .iceInpSecrt-dis { + font-family: Arial, Helvetica, sans-serif; + color: #ABABAB; + border: 1px dotted #CCCCCC; + cursor: default; + margin: 2px; + padding: 2px; +} + +.iceInpTxtArea-dis { + font-family: Arial, Helvetica, sans-serif; + font-size: .95em; + color: #ABABAB; + border: 1px dotted #CCCCCC; + cursor: default; + margin: 2px; + padding: 2px; +} + +.iceSelMnyCb-dis { + background-color: #CCCCCC; + padding: 2px; + margin: 2px; + cursor: default; + color: #CCCCCC; + border: none; +} + +.iceSelOneMnu-dis, .iceSelMnyLb-dis, .iceSelMnyMnu-dis, .iceSelOneLb-dis { + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + padding: 2px; + font-size: .95em; + cursor: default; + border: none; +} + +.iceSelOneRb-dis { + background-color: #CCCCCC; + padding: 2px; + margin: 2px; + cursor: default; + color: #444444; + border: none; +} + +.iceInpFileTxt-dis { + border: none; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + cursor: default; +} + +.iceInpFileBtn-dis { + border: 1px solid #CCCCCC; + background-color: #FFFFFF; + margin: 2px; + padding: 2px; + font-family: Arial, Helvetica, sans-serif; + color: #CCCCCC; + cursor: default; +} + +/* submenu disabled style classes */ +.iceSubMenuRowLabel-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; +} + +.iceSubMenuRow-dis { + color: #ABABAB; + text-decoration: none; + cursor: default; + padding: 0px; + display: block; + height: auto; +} + +.iceSubMenuRow-dis a { + color: #333333; + text-decoration: none; + cursor: default; + display: block; + padding-left: 3px; + padding-right: 3px; + padding-top: 3px; + padding-bottom: 3px; + +} + +.iceSubMenuRow-dis a:hover { + color: #ABABAB; + text-decoration: none; + border-bottom: 1px dotted #CCCCCC; + cursor: default; +} + + +/* panel tabs disabled style classes */ + +.icePnlTbOff { /* was iceTabSetTabOff*/ + +} + +.icePnlTbOff .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOff .MidTop-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOff .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOff .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; + +} + +.icePnlTbOff .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOff .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOff .MidBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOff .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab off */ +.icePnlTbOffBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOffBtm .MidBtm-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOffBtm .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOffBtm .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; + +} + +.icePnlTbOffBtm .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOffBtm .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOffBtm .MidTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOffBtm .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* disabled bottom tab on */ + +.icePnlTbOnBtm .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOnBtm .MidBtm-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOnBtm .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOnBtm .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; +} + +.icePnlTbOnBtm .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOnBtm .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOnBtm .MidTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOnBtm .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* tab on disabled */ +.icePnlTbOn { + +} + +.icePnlTbOn .LftTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; + height: 4px; +} + +.icePnlTbOn .MidTop-dis { + background-color: #DEDEDE; + background-image: url( './css-images/off-mid-top-dis.gif' ); + background-repeat: repeat-x; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .RtTop-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-top-dis.gif" ); + background-repeat: no-repeat; + background-position: bottom; + text-align: center; + padding-top: 1px; + border: none; +} + +.icePnlTbOn .LftMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-left-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .MidMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-mid-mid.gif"); + background-repeat:repeat-x;*/ + text-align: center; + padding-top: 5px; + padding-right: 15px; + padding-left: 15px; + border: none; + white-space: nowrap; + color: #ABABAB; +} + +.icePnlTbOn .MidMid-dis a { + text-decoration: none; + color: #ABABAB; + cursor: default; +} + +.icePnlTbOn .RtMid-dis { + background-color: #DEDEDE; + /* background-image: url("./css-images/off-right-mid.gif"); + background-repeat:no-repeat;*/ + text-align: center; + padding-top: 15px; + border: none; +} + +.icePnlTbOn .LftBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-left-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +.icePnlTbOn .MidBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-mid-bot.gif" ); + background-repeat: repeat-x; + border: none; +} + +.icePnlTbOn .RtBtm-dis { + background-color: transparent; + background-image: url( "./css-images/off-right-bot.gif" ); + background-repeat: no-repeat; + border: none; +} + +/* +data scroller classes disabled styles +*/ +.sclBtnCell-dis { +/* the cells behind the scroll buttons */ + background-color: #FFFFFF; + padding: 2px; +} + +.sclBtnCell-dis img { + cursor: default; +} + +.icePaginatorTbl-dis { +/* the container for the pagination*/ + background-color: #FFFFFF; +} + +/* set the common attributes for the pagination numbers */ +.icePaginatorAtvCol-dis a, .icePaginatorCol-dis a { + text-decoration: none; + font-weight: normal; + background-color: #FFFFFF; + color: #ABABAB; + display: block; + padding-left: 5px; + padding-right: 5px; + border: 1px solid #FFFFFF; + cursor: default; +} + +/* override the attributes for the currently selected page */ +.icePaginatorAtvCol-dis a { + color: #ABABAB; + /* border:1px solid #2A6CC2; + background-color:#2A6CC2; + */ + cursor: default; +} + +/* set the attributes for the mouseover on none-current pages */ +.icePaginatorCol-dis a:hover { + /* color:#000000; + border:1px solid #2A6CC2;*/ +} + +/* +Disabled classes for the calendar controls +*/ + +.iceSelInpDate-dis { +/* calendar outline & background color */ + background-color: #FFFFFF; + border: 1px solid #DEDEDE; /* removed margin from calendar outline - better absolute positioning of popup */ +/*margin:10px;*/ +} + +.iceSelInpDateMonthYear-dis { + background-color: #EFEFEF; + /* background-image: url("./css-images/table_col_header.gif"); + background-position:bottom; + background-repeat:repeat-x;*/ + font-weight: normal; + text-align: center; + color: #999999; + padding-left: 1px; + padding-right: 1px; + padding-top: 4px; + padding-bottom: 4px; /*border-right:1px solid #CCCCCC;*/ +} + +.iceSelInpDateMoYrDropdown-dis { + background-color: #EFEFEF; + color: #999999; +} + +.iceSelInpDateMonthYear-dis img { + cursor: default; +} + +.iceSelInpDateWeek-dis { +/* the days of the week row */ + font-weight: normal; + color: #999999; + background-color: #EFEFEF; + text-align: center; + padding-left: 5px; + padding-right: 5px; + border-bottom: 1px solid #ABABAB; +} + +/* set the look for the days of the week backgrounds */ +.iceSelInpDateDay-dis, .iceSelInpDateCur-dis { +/* the background & alignment for the days */ + padding: 3px; + text-align: center; +} + +/* now set the attributes for the numbers for each day of the week */ +.iceSelInpDateDay-dis a { +/* the day text */ + text-decoration: none; + background-color: #FFFFFF; + border: 1px solid #FFFFFF; + color: #ABABAB; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +.iceSelInpDateCur-dis a { + text-decoration: none; + background-color: #ABABAB; + border: 1px solid #ABABAB; + color: #FFFFFF; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +/* +----------- commandSortHeader classes +*/ +.iceCmdSrtHdr { + text-decoration: none; + /*border: 1px solid #ABABAB;*/ + color: #333333; + width: 100%; + height: 100%; + padding: 0px; + display: block; +} + +.iceCmdSrtHdr-dis { + text-decoration: none; + /*border: 1px solid #ABABAB;*/ + color: #999999; + width: 100%; + height: 100%; + padding: 0px; + display: block; + cursor: default; +} + +.iceCmdSrtHdrAsc, .iceCmdSrtHdrDesc{ + background-repeat: no-repeat; + background-position: center; + width:10px; + height:10px; +} +.iceCmdSrtHdrAsc{ + background-image: url('./css-images/column_sort_asc.gif'); +} +.iceCmdSrtHdrDesc{ + background-image: url('./css-images/column_sort_desc.gif'); +} + +.iceCmdSrtHdr td { + white-space:nowrap; + overflow:hidden; +} + +/* IE specific CSS to enlarge clickable area of SortHeader links */ +* html .iceCmdSrtHdr { + height: 1%; +} + +/* +----------- form ---------- +*/ +.iceFrm { + +} + +/* +----------- graphicImage ---------- +*/ +.iceGphImg { + +} + +/* +----------- message ---------- +*/ +.iceMsg { + +} + +.iceMsgFatal { + +} + +.iceMsgError { + +} + +.iceMsgWarn { + +} + +.iceMsgInfo { + +} + +/* +----------- messages ---------- +*/ +.iceMsgs { + +} + +.iceMsgsFatal { + +} + +.iceMsgsError { + +} + +.iceMsgsWarn { + +} + +.iceMsgsInfo { + +} + +/* +----------- panelGrid ---------- +*/ +.icePnlGrd { + +} + +.icePnlGrdHdr { + +} + +.icePnlGrdFtr { + +} + +.icePnlGrdRow1 { + +} + +.icePnlGrdRow2 { + +} + +.icePnlGrdCol1 { + +} + +.icePnlGrdCol2 { + +} + +/* +----------- panelGroup ---------- +*/ +.icePnlGrp { + +} + +/* +----------- outputFormat ---------- +*/ +.iceOutFrmt { + +} + +/* +----------- tree ---------- +*/ +.iceTree { + +} + +.iceTreeRow { + +} + +/* +----------- panelSeries ---------- +*/ +.icePnlSrs { + +} +/* +----------- positionedPanel ---------- +*/ +.icePnlPos { + +} + +.icePnlPos-dis { + +} + +/* +----------- positionedPanel ---------- +*/ +.icePnlStk {} +.icePnlStkRow {} +.icePnlStkCol {} + +/* +----------- panelTab header ---------- +*/ +.icePnlTbSetHdrIconLft { + width: 14px; + height: 13px; + +} + +.icePnlTbSetHdrIconRt { + width: 14px; + height: 13px; +} + +.icePnlTbSetHdrLbl { + padding-top: 2px; + padding-bottom: 2px; + white-space: nowrap; +} + +/* +----------- Table Row Selection -------- +*/ +.iceRowSelSelected { + background-color: #316AC5; +} +.iceRowSelSelected span { + color: #FFFFFF; +} + +.iceRowSelSelectedMouseOver { + background-color: #0D4092; +} + +.iceRowSelSelectedMouseOver span { + color: #FFFFFF; +} + + +.iceRowSelMouseOver { + background-color: #B2CDF9; +} + +.iceRowSelMouseOver span{ + color: #000000; +} + +/* +----------- outputChart -------- +*/ + +.iceOutChrt { + +} + +/* +----------- Panel Collapsible -------- +*/ + +/* opened accordion styles */ +.icePnlClpsbl, .icePnlClpsblHdr, .icePnlClpsblCnt { +} + +/* Closed */ +.icePnlClpsblColpsd, .icePnlClpsblColpsdHdr, .icePnlClpsblColpsdCnt { +} + +/* Open and disabled */ +.icePnlClpsbl-dis, .icePnlClpsblHdr-dis, .icePnlClpsblCnt-dis { +} + +/* Closed and disabled */ +.icePnlClpsblColpsd-dis, .icePnlClpsblColpsdHdr-dis, .icePnlClpsblColpsdCnt-dis{ +} + +/* common accordion headers */ +.icePnlClpsblHdr, .icePnlClpsblColpsdHdr { + background-color: #EFEFEF; + background-image: url( "./css-images/table_col_header.gif" ); + background-position: bottom; + background-repeat: repeat-x; + font-weight: bold; + text-align: left; + color: #000; + border: 1px solid #CCCCCC; + border-bottom: none; + padding-left: 2px; + padding-right: 5px; + padding-top: 4px; + padding-bottom: 4px; + cursor: pointer; +} + +.icePnlClpsblHdr .iceOutTxt, .icePnlClpsblColpsdHdr .iceOutTxt { + color: #000; +} + +.icePnlClpsblCnt, .icePnlClpsblColpsdCnt, +.icePnlClpsblColpsdCnt-dis, .icePnlClpsblCnt-dis { + background-color: #EFEFEF; + border: 1px solid #CCCCCC; + border-top: none; + padding-left: 5px; + padding-right: 5px; + color: #000; +} + +.icePnlClpsblHdr-dis, .icePnlClpsblColpsdHdr-dis { + background: #EFEFEF url( './css-images/table_col_header_dis.gif' ) repeat-x bottom; + font-weight: bold; + text-align: left; + color: #999; + border: 1px solid #CCCCCC; + border-bottom: none; + padding-left: 2px; + padding-right: 5px; + padding-top: 4px; + padding-bottom: 4px; + cursor: default; +} + +.icePnlClpsblHdr-dis .iceOutTxt, .icePnlClpsblColpsdHdr-dis .iceOutTxt { + color: #999; +} + +.icePnlClpsblColpsdCnt-dis, .icePnlClpsblCnt-dis, +.icePnlClpsblColpsdCnt-dis .iceOutTxt, .icePnlClpsblCnt-dis .iceOutTxt { + color: #999; +} + +.iceGmp{ + border-collapse:collapse; + border-spacing:0px; + padding:0px; +} + +.iceGmpMapTd { + vertical-align: top; +} + +.iceGmpMapTd div.gmap{ + width:300px; + height:300px; +} + +.iceInpRchTxt { + width:100%; +} + +/* panel divider */ +.icePnlDvr, .icePnlDvrHor { + width:300px; + height:300px; +} + +.icePnlDvrCnt, .icePnlDvrHorCnt { + border: 1px solid #ABABAB; + /*width:100%; */ + height:100%; +} + +.icePnlDvrFst, .icePnlDvrSnd{ + height:100%; + display:block; + float:left; + overflow:auto; +} + +.icePnlDvrSpt { + width:2px; + height:100%; + display:inline; + background-color: #EFEFEF; + border-left: 1px solid #ABABAB; + border-right: 1px solid #ABABAB; + float:left; + cursor: e-resize; +} + +.icePnlDvrHorFst, .icePnlDvrHorSnd{ + width:100%; + display:block; + overflow:auto; + display:block; +} + +.icePnlDvrHorSpt { + width:100%; + height:2px; + background-color: #EFEFEF; + border-top: 1px solid #ABABAB; + border-bottom: 1px solid #ABABAB; + cursor: n-resize; +} + +/* +----------- PanelConfirmation ---------- +*/ + +.icePnlCnf { + border-top: 1px solid #ABABAB; + border-right: 2px solid #ABABAB; + border-left: 1px solid #ABABAB; + border-bottom: 2px solid #ABABAB; + background-color: #DDDDDD; + padding: 0; + width: 300px; + z-index: 1000; + color: #000000; + font-family: Arial, Helvetica, sans-serif; +} + +.icePnlCnfHdr { + background-color: #DEDEDE; + background-image: url( "./css-images/window_top.gif" ); + background-position: top; + background-repeat: repeat-x; + height: auto; + color: #FFFFFF; + font-size: 1em; + font-weight: bold; + padding: 4px; + text-align: left; + vertical-align: middle; +} + +.icePnlCnfBody { + padding: 10px 10px 5px 10px; + background-color: #DDDDDD; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns { + padding: 5px 10px 10px 10px; + background-color: #DDDDDD; + text-align: center; + font-size: 1em; + font-weight: normal; +} + +.icePnlCnfBtns input { + margin: 0 20px 0 20px; +} + diff --git a/Music_List/src/pulsoconf/music/list/bean/MusicBean.java b/Music_List/src/pulsoconf/music/list/bean/MusicBean.java new file mode 100644 index 0000000..8f9b789 --- /dev/null +++ b/Music_List/src/pulsoconf/music/list/bean/MusicBean.java @@ -0,0 +1,39 @@ +package pulsoconf.music.list.bean; + +import java.util.ArrayList; +import java.util.List; + +import pulsoconf.music.list.logic.MusicListGeneric; + +public class MusicBean { + + private List lstMusic; + + /** + * + * Consult Music + * @return + */ + public String action_consult(){ + lstMusic = new ArrayList(); + lstMusic = loadMusic(); + + return ""; + } + + public List loadMusic(){ + + lstMusic = new ArrayList(); + MusicListGeneric music = new MusicListGeneric("Sport", "Rap", "Inda House", "50cent", "0", "http://prueba", "2"); + MusicListGeneric music1 = new MusicListGeneric("Sport", "Rap", "Inda House", "50cent", "0", "http://prueba", "2"); + MusicListGeneric music2 = new MusicListGeneric("Sport", "Rap", "Inda House", "50cent", "0", "http://prueba", "2"); + MusicListGeneric music3 = new MusicListGeneric("Sport", "Rap", "Inda House", "50cent", "0", "http://prueba", "2"); + MusicListGeneric music4 = new MusicListGeneric("Sport", "Rap", "Inda House", "50cent", "0", "http://prueba", "2"); + MusicListGeneric music5 = new MusicListGeneric("Sport", "Rap", "Inda House", "50cent", "0", "http://prueba", "2"); + + lstMusic.add(music); + + return lstMusic; + } + +} diff --git a/Music_List/src/pulsoconf/music/list/logic/MusicListGeneric.java b/Music_List/src/pulsoconf/music/list/logic/MusicListGeneric.java new file mode 100644 index 0000000..8a74e2a --- /dev/null +++ b/Music_List/src/pulsoconf/music/list/logic/MusicListGeneric.java @@ -0,0 +1,76 @@ +package pulsoconf.music.list.logic; +/** + * Class Music + * @author USSER + * + */ +public class MusicListGeneric { + + private String type; + private String genre; + private String nameSong; + private String nameBand; + private String start; + private String url; + private String speed; + + + + public MusicListGeneric(String type, String genre, String nameSong, + String nameBand, String start, String url, String speed) { + super(); + this.type = type; + this.genre = genre; + this.nameSong = nameSong; + this.nameBand = nameBand; + this.start = start; + this.url = url; + this.speed = speed; + } + + public String getType() { + return type; + } + public void setType(String type) { + this.type = type; + } + public String getGenre() { + return genre; + } + public void setGenre(String genre) { + this.genre = genre; + } + public String getUrl() { + return url; + } + public void setUrl(String url) { + this.url = url; + } + public String getSpeed() { + return speed; + } + public void setSpeed(String speed) { + this.speed = speed; + } + public String getNameSong() { + return nameSong; + } + public void setNameSong(String nameSong) { + this.nameSong = nameSong; + } + public String getNameBand() { + return nameBand; + } + public void setNameBand(String nameBand) { + this.nameBand = nameBand; + } + public String getStart() { + return start; + } + public void setStart(String start) { + this.start = start; + } + + + +}