You can subscribe to this list here.
2004 |
Jan
|
Feb
(27) |
Mar
(26) |
Apr
(16) |
May
(31) |
Jun
(25) |
Jul
(41) |
Aug
|
Sep
(13) |
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
|
Feb
|
Mar
(2) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:51:12
|
Update of /cvsroot/muspa/muspa/sys/templates In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23208 Added Files: Tag: MUSPA_2_0_branch base.xml entrada.xml login.xml msgbox.xml Log Message: Novos templates em XML --- NEW FILE: msgbox.xml --- <patTemplate:tmpl name="main"> <msgbox title="{TITLE}" subtitle="{SUBTITLE}" caption="{CAPTION}" muspaversion="{VERSION}" year="2004"> <text>{MSG}</text> <text>Clique <a href="{URL}">aqui</a> para efetuar logon novamente.</text> </msgbox> </patTemplate:tmpl> --- NEW FILE: entrada.xml --- (This appears to be a binary file; contents omitted.) --- NEW FILE: base.xml --- <patTemplate:tmpl name="main"> <muspa title="Painel de Controle" muspaversion="{VERSION}" year="2004" privs="{PRIVS}" user="{USER}" loggedat="{LOGGEDAT}" caption="{CAPTION}"> <!-- Menu --> <menu> <patTemplate:tmpl name="menu" type="condition" conditionvar="TYPE"> <patTemplate:sub condition="menu"> <item type="menu" name="{NOME}" description="{DESCRICAO}" selected="{SELECTED}" /> </patTemplate:sub> <patTemplate:sub condition="submenu"> <item type="submenu" name="{NOME}" description="{DESCRICAO}" link="{LINK}" /> </patTemplate:sub> <patTemplate:sub condition="directmenu"> <item type="directmenu" name="{NOME}" description="{DESCRICAO}" link="{LINK}" /> </patTemplate:sub> </patTemplate:tmpl> </menu> <patTemplate:link src="content"/> </muspa> </patTemplate:tmpl> --- NEW FILE: login.xml --- <patTemplate:tmpl name="main"> <msgbox title="Logon" subtitle="login" caption="Login" onload="InitTips();" muspaversion="{VERSION}" year="2004"> <javascript src="util.js" /> <javascript src="tip.js" /> <text>Para entrar no Painel de Controle, digite seu nome de usuário e senha.</text> <patTemplate:tmpl name="error"> <error>{ERROR}</error> </patTemplate:tmpl> <formtable> <item name="Usuário"> <textfield required="yes" name="user" value="{USER}" tip="Nome do Usuário" /> </item> <item name="Senha"> <passwordfield required="yes" name="pwd" tip="Sua senha" /> </item> <item type="mono"> <button type="submit" value="Entrar" /> </item> </formtable> </msgbox> </patTemplate:tmpl> |
From: Hugo P. L. <hu...@bo...> - 2004-07-11 13:43:32
|
Ae, criei um branch MUSPA_2_0_branch no CVS, l=E1 eu to fazendo as mudan=E7as para a vers=E3o 2.0... as mais radicais, (XML/XSLT), acho que = eu poderia estar fazendo essas mudan=E7as no branch principal ao inv=E9s de criar um outro separado.... alias, acho que isso seria o normal... pois criar branch =E9 s=F3 para coisas especiais (o porte para PHP5 por ex.), = e o MUSPA 2.0 faz parte do caminho a seguir.... Mas tb tem a vantagem... se pro acaso eu falhar ao portar o MUSPA para XML o branch principal vai continuar intacto =3DP. Quando o 2.0 estiver funcional e perto de ser liberado, a gente volta ele para o branch principal. =3D] Para baixar o 2.0 via CVS: cvs -d:(...):/cvsroot/muspa co -r MUSPA_2_0_branch muspa =E9 isso... flw... --=20 Hugo P.L. "Precisamos de mais g=EAnios humildes no mundo, hoje somos poucos!" |
From: Hugo P. L. <hu...@bo...> - 2004-07-11 13:43:17
|
Ok, voc=EA venceu, vamos usar a classe DB do Pear ent=E3o..... =3D]... as= sim n=E3o teremos que reinventar a roda... To passando o site do MUSPA para XML/XSLT... para eu pegar um pouco mais de pr=E1tica antes de come=E7ar a passar o MUSPA. Sobre o PHP5 eu ainda fico meio que com p=E9 atr=E1s.... PHP5 =E9 muito = bom, as mudan=E7as dele sobre orienta=E7=E3o a objeto s=E3o =F3timas, mas tem = um problema, em lugar algum algu=E9m consegue achar um servidor que suporta PHP5, e ainda vai ser assim por um bom tempo mesmo depois de lan=E7ado o PHP5... mas acho que a gente poderia fazer um branch no CVS para o suporte ao PHP5 , sei lah... O m=F3dulo de not=EDcias gerar RSS feeds tb =E9 muito =FAtil, ja tenho aq= ui anotado na minha lista de coisas a fazer no m=F3dulo de not=EDcias. Outra coisa, esse m=F3dulo que voc=EA falou que ta querendo fazer....fa=E7= a! =3DP, estamos precisando de mais m=F3dulos... o m=F3dulo de enquete por exemplo.... ta imcompleto, se quiser continuar ele seja bem vindo.... o m=F3dulo de newsletter, etc... eu n=E3o to mechendo neles pq to tomando conta do m=F3dulo de not=EDcias e do core... que vai sofrer algumas mudan= =E7as dr=E1sticas... (XML/XSLT). S=F3 uma coisa, antes de come=E7ar a fazer um m=F3dulo, fala por aqui o q= ue o m=F3dulo pretende ser.... assim a gente vai poder trocar id=E9ias sobre a= s funcionalidades do m=F3dulo, etc... P.S.: N=E3o sei se voc=EA j=E1 notou, mas eu tenho avers=E3o a conversar = pelo telefone.....n=E3o consigo passar mais de 2mim no telefone.... por isso sou t=E3o chato no telefone.... hehehehe, telefone =E9 para dar recado ;) --=20 Hugo P.L. "Precisamos de mais g=EAnios humildes no mundo, hoje somos poucos!" |
Update of /cvsroot/muspa/muspa/skins/phptools/img In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21299/phptools/img Added Files: Tag: MUSPA_2_0_branch arrow.gif b1_bgb.gif b1_bgl.gif b1_bgl2.gif b1_bgr.gif b1_bgr2.gif b1_cbl.gif b1_cbr.gif b1_ctl.gif b1_ctr.gif b2_bgb.gif b2_bgl.gif b2_bgr.gif b2_bgt.gif b2_cbl.gif b2_cbr.gif b2_ctl.gif b2_ctr.gif bar_center.gif bar_left.gif bar_right.gif bullet.gif h_end.gif h_start.gif ic_help.gif ic_required.gif line.gif menu_bgb.gif menu_bgr.gif menu_bm.gif menu_bmo.gif menu_bp.gif menu_bpo.gif menu_bs.gif menu_bso.gif menu_cbr.gif menu_ctr.gif page_next.gif page_prev.gif pb_pattemplate.gif px.gif tip_bg_b.gif tip_bg_l.gif tip_bg_r.gif tip_bg_t.gif tip_cbl.gif tip_cbr.gif tip_ctl.gif tip_ctr.gif v.gif valid-xhtml10.gif Log Message: Skin default --- NEW FILE: menu_bm.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b2_ctl.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: v.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b2_bgl.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: bullet.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: h_end.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_bgb.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_bgr2.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip_bg_b.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b2_bgb.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_bgr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_bgr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip_bg_l.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b2_cbr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_ctr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_cbr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip_bg_t.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b2_bgr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_bmo.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: bar_right.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_cbl.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_bgb.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: pb_pattemplate.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip_ctl.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip_ctr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_bgl.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_bpo.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: bar_left.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_cbr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip_cbr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: h_start.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: bar_center.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: valid-xhtml10.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_bp.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: page_prev.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_bso.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu_bs.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: arrow.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: ic_required.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: line.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip_bg_r.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_ctr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b2_ctr.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b2_cbl.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: px.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_ctl.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: ic_help.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip_cbl.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: page_next.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b2_bgt.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: b1_bgl2.gif --- (This appears to be a binary file; contents omitted.) |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:37:28
|
Update of /cvsroot/muspa/muspa/skins/phptools In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21299/phptools Added Files: Tag: MUSPA_2_0_branch menu.js phptools.xsl style.css tip.js util.js Log Message: Skin default --- NEW FILE: util.js --- /** * Seta a dica para um determinado texto */ function SetTip( tip ) { window.status = tip; // document.getElementById("dica").innerHTML = tip; return true; } /** * UnSeta a dica */ function UnsetTip() { window.status = ''; // document.getElementById("dica").innerHTML = ''; return true; } //SetTip('oi, sou uma dica'); /** * Frescuras nos campos input */ function loseFocus( obj ) { alert("DEBUG: Retire o javascript \"onfocus\" e \"onblur\" deste campo!\nEle foi substituido pelo lindo CSS2"); // obj.className=""; } function wonFocus( obj ) { alert("DEBUG: Retire o javascript \"onfocus\" e \"onblur\" deste campo!\nEle foi substituido pelo lindo CSS2"); // obj.className = "focus"; } /** * Mascaras */ function Mask( objid, format ) { this.format = format; this.doMask = doMask; var obj = document.getElementById( objid ); if (!obj) alert("Objeto não encontrado."); else obj.onkeypress = this.doMask; } function doMask( e ) { var Mask = eval(this.id); if (document.all) e = window.event; var code = (document.all) ? e.keyCode : e.charCode; if (code < 32) return; var keypress = String.fromCharCode(code); if ((keypress.search(/[0-9]/) != -1) && this.value.length < Mask.format.length) { if (Mask.format.charAt(this.value.length).search(/[0-9]/) == -1 ) this.value += Mask.format.charAt(this.value.length); } else { if (document.all) e.returnValue = false; else e.preventDefault(); } } --- NEW FILE: phptools.xsl --- <?xml version="1.0" encoding="ISO-8859-1" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns="http://www.w3.org/1999/xhtml"> <xsl:output method="xhtml" indent="no" encoding="ISO-8859-1" version="1.0" omit-xml-declaration="no" /> <!-- Base --> <xsl:template match="/muspa"> <html> <head> <title><xsl:value-of select="@title" /></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link href="skins/phptools/style.css" rel="stylesheet" type="text/css" /> <xsl:apply-templates select="javascript" /> <script type="text/javascript" src="skins/phptools/menu.js"></script> <script type="text/javascript" src="skins/phptools/util.js"></script> <script type="text/javascript" src="skins/phptools/tip.js"></script> <script type="text/javascript"> <xsl:comment> <![CDATA[ var arImages=new Array(); function Preload() { var temp = Preload.arguments; for(x=0; x < temp.length; x++) { arImages[x]=new Image(); arImages[x].src=Preload.arguments[x]; } } ]]> </xsl:comment> </script> <link href="skins/phptools/style.css" rel="stylesheet" type="text/css" /> <link href="editors/htmlarea/htmlarea.css" rel="stylesheet" type="text/css" /> </head> <body onload="Preload('img/menu_bpo.gif', 'img/menu_bm.gif', 'img/menu_bmo.gif', 'img/menu_bs.gif', 'img/menu_bso.gif');InitTips();"> <table width="100%" border="0" cellpadding="2" cellspacing="2"> <tr> <td width="150" valign="top"><table width="95%" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="100%" align="right" valign="top" class="menu_title">Opções do Menu </td> <td align="right"><img src="skins/phptools/img/menu_ctr.gif" width="18" height="28" alt="" /></td> </tr> <tr> <td width="100%" valign="top"> <div id="menu"></div> <script type="text/javascript"> <xsl:comment> var oMenu = new Menu(); <xsl:for-each select="menu/item"> <xsl:choose> <xsl:when test="@type = 'menu'"> oMenu.addOpt("<xsl:value-of select="@name" />", "<xsl:value-of select="@description" />", null, <xsl:value-of select="@selected" />); </xsl:when> <xsl:when test="@type = 'submenu'"> oMenu.addSubOpt("<xsl:value-of select="@name" />", "<xsl:value-of select="@description" />", "<xsl:value-of select="@link" />"); </xsl:when> <xsl:when test="@type = 'directmenu'"> oMenu.addOpt("<xsl:value-of select="@name" />", "<xsl:value-of select="@description" />", "<xsl:value-of select="@link" />", false); </xsl:when> </xsl:choose> </xsl:for-each> oMenu.display(); //</xsl:comment> </script> </td> <td style="background: url(skins/phptools/img/menu_bgr.gif);"><img src="skins/phptools/img/px.gif" alt="" width="18" /></td> </tr> <tr> <td colspan="2" align="right"><img src="skins/phptools/img/menu_bgb.gif" width="7" height="16" alt="" /><img src="skins/phptools/img/menu_cbr.gif" width="18" height="16" alt="" /></td> </tr> </table></td> <td align="center" valign="top"><table width="95%" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <table style="background: url(skins/phptools/img/line.gif);" width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"> <td><img src="skins/phptools/img/b1_ctl.gif" width="27" height="27" alt="" border="0" /></td> <td style="background-image: url(skins/phptools/img/h_start.gif); background-repeat:repeat-x;" valign="top"><pre style="margin:0px;" class="b1_eye">Painel de Controle:</pre></td> <td><img src="skins/phptools/img/h_end.gif" width="15" height="15" alt="" border="0" /></td> <td align="right" width="100%"><img src="skins/phptools/img/b1_ctr.gif" width="14" height="27" alt="" border="0" /></td> </tr> </table> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"> <td style="background: url(skins/phptools/img/b1_bgl.gif);"><img src="skins/phptools/img/arrow.gif" width="34" height="14" alt="" border="0" /></td> <td width="100%" align="left" class="b1_title"><xsl:value-of select="@caption" /></td> <td style="background: url(skins/phptools/img/b1_bgr.gif);"><img src="skins/phptools/img/px.gif" width="14" height="1" alt="" border="0" /></td> </tr> </table> <div class="horizontalline"><img src="skins/phptools/img/px.gif" width="1" height="1" alt="" border="0" /></div> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"> <td style="background: url(skins/phptools/img/b1_bgl2.gif);"><img src="skins/phptools/img/px.gif" width="34" height="1" alt="" border="0" /></td> <td width="100%" align="left" class="content" valign="top"> <div class="ie_bug1"> <!-- Conteudo --> <xsl:apply-templates /> <!-- Fim do Conteudo --> </div> </td> <td style="background: url(skins/phptools/img/b1_bgr2.gif);"><img src="skins/phptools/img/px.gif" width="14" height="1" alt="" border="0" /></td> </tr> </table> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td style="background: url(skins/phptools/img/b1_bgb.gif);"><img src="skins/phptools/img/b1_cbl.gif" width="27" height="14" alt="" border="0" /></td> <td style="background: url(skins/phptools/img/b1_bgb.gif);" align="right" width="100%"><img src="skins/phptools/img/b1_cbr.gif" width="14" height="14" alt="" border="0" /></td> </tr> </table></td> </tr> </table></td> </tr> </table> <br /> <div class="tip"><xsl:value-of select="@muspaversion" /> Copyright © <xsl:value-of select="@year" />, <a href="http://muspa.sf.net" target="muspa" class="title">MUSPA Project</a></div> <div class="horizontalline"><img src="img/px.gif" width="1" height="1" alt="" border="0" /></div> <div class="tip" align="right"><span class="title"><xsl:value-of select="@privs" />: </span><xsl:value-of select="@user" />, logado a <xsl:value-of select="@loggedat" />. </div> <xsl:call-template name="tiplayer" /> </body> </html> </xsl:template> <!-- Message Box --> <xsl:template match="/msgbox"> <html> <head> <title><xsl:value-of select="@title" /></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link href="skins/phptools/style.css" rel="stylesheet" type="text/css" /> <xsl:apply-templates select="javascript" /> </head> <body onload="{@onload}"> <table width="350" align="center" border="0" cellpadding="0" cellspacing="0" style="padding-top: 80px;"> <tr> <td> <table style="background: url(skins/phptools/img/line.gif);" width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"> <td><img src="skins/phptools/img/b1_ctl.gif" width="27" height="27" alt="" border="0" /></td> <td class="b1_eye" style="background-image: url(skins/phptools/img/h_start.gif); background-repeat:repeat-x;"><xsl:value-of select="@subtitle"/>:</td> <td><img src="skins/phptools/img/h_end.gif" width="15" height="15" alt="" border="0" /></td> <td align="right" width="100%"><img src="skins/phptools/img/b1_ctr.gif" width="14" height="27" alt="" border="0" /></td> </tr> </table> <table bgcolor="#ffffff" width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"> <td style="background: url(skins/phptools/img/b1_bgl.gif);"><img src="skins/phptools/img/arrow.gif" width="34" height="14" alt="" border="0" /></td> <td width="100%" class="b1_title"><xsl:value-of select="@caption" /></td> <td style="background: url(skins/phptools/img/b1_bgr.gif);"><img src="skins/phptools/img/px.gif" width="14" height="1" alt="" border="0" /></td> </tr> </table> <div class="horizontalline"><img src="skins/phptools/img/px.gif" width="1" height="1" alt="" border="0" /></div> <table bgcolor="#E9E9E9" width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"> <td style="background: url(skins/phptools/img/b1_bgl2.gif);"><img src="skins/phptools/img/px.gif" width="34" height="1" alt="" border="0" /></td> <td width="100%" class="content"> <div class="ie_bug1"> <xsl:apply-templates /> </div> </td> <td style="background: url(skins/phptools/img/b1_bgr2.gif);"><img src="skins/phptools/img/px.gif" width="14" height="1" alt="" border="0" /></td> </tr> </table> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td style="background: url(skins/phptools/img/b1_bgb.gif);"><img src="skins/phptools/img/b1_cbl.gif" width="27" height="14" alt="" border="0" /></td> <td style="background: url(skins/phptools/img/b1_bgb.gif);" align="right" width="100%"><img src="skins/phptools/img/b1_cbr.gif" width="14" height="14" alt="" border="0" /></td> </tr> </table></td> </tr> </table> <!-- Meu lindo copyright, se vc tirar isso daqui eu vou rezar todo santo dia para que você tenha um câncer no cerebro... --> <div class="tip" style="position: absolute; left: 10px; bottom: 10px;"> <xsl:value-of select="@muspaversion" /> Copyright © <xsl:value-of select="@year" />, <a href="http://muspa.sf.net" target="muspa" class="title">MUSPA Project.</a> </div> <!-- patTemplate logo --> <div style="position: absolute; right: 10px; bottom: 10px;"> <a href="http://validator.w3.org/check/referer"><img src="skins/phptools/img/valid-xhtml10.gif" alt="Valid XHTML 1.0!" height="31" width="88" border="0" /></a> <a href="http://www.php-tools.de/" target="_blank"><img src="skins/phptools/img/pb_pattemplate.gif" alt="Powered by patTemplate" width="104" height="53" border="0" /></a> </div> <xsl:call-template name="tiplayer" /> </body> </html> </xsl:template> <!-- Tip Layer --> <xsl:template name="tiplayer"> <div id="tiplayer"> <table width="312" border="0" cellpadding="0" cellspacing="0" class="tip"> <tr> <td><img src="skins/phptools/img/tip_ctl.gif" width="10" height="22" alt="" border="0" /></td> <td id="tiptitle" style="background: url(skins/phptools/img/tip_bg_t.gif);" valign="top" width="100%" class="lighttitle">Dica:</td> <td><img src="skins/phptools/img/tip_ctr.gif" width="11" height="22" alt="" border="0" /></td> </tr> <tr> <td style="background: url(skins/phptools/img/tip_bg_l.gif);"><img src="skins/phptools/img/px.gif" width="10" height="1" alt="" border="0" /></td> <td id="tipmessage" style="background-color: #FFFFFF;"></td> <td style="background: url(skins/phptools/img/tip_bg_r.gif);"><img src="skins/phptools/img/px.gif" width="11" height="1" alt="" border="0" /></td> </tr> <tr> <td><img src="skins/phptools/img/tip_cbl.gif" width="10" height="13" alt="" border="0" /></td> <td style="background: url(skins/phptools/img/tip_bg_b.gif);"><img src="skins/phptools/img/px.gif" width="1" height="13" alt="" border="0" /></td> <td><img src="skins/phptools/img/tip_cbr.gif" width="11" height="13" alt="" border="0" /></td> </tr> </table> </div> <script type="text/javascript"> var layer = document.getElementById("tiplayer"); layer._width = 312; </script> </xsl:template> <!-- Java Script --> <xsl:template match="javascript"><script type="text/javascript" src="{@src}"></script></xsl:template> <!-- Texto --> <xsl:template match="text"><p><xsl:apply-templates /></p></xsl:template> <!-- Form table --> <xsl:template match="formtable"> <form method="post" action="{@action}"> <!-- Hiddens --> <xsl:for-each select="hidden"> <input type="hidden" name="{@name}" value="{@value}" /> </xsl:for-each> <!-- Tabela --> <table border="0" class="tableform"> <xsl:for-each select="item"> <tr> <xsl:choose> <xsl:when test="@type = 'mono'"> <td colspan="2" align="right"><xsl:apply-templates /></td> </xsl:when> <xsl:otherwise> <td valign="top"><xsl:value-of select="@name" /></td> <td><xsl:apply-templates /></td> </xsl:otherwise> </xsl:choose> </tr> </xsl:for-each> </table> </form> </xsl:template> <!-- Text button --> <xsl:template match="button"><input type="submit" class="button" value="{@value}" /></xsl:template> <!-- Text Field --> <xsl:template match="textfield"> <input type="text" name="{@name}" value="{@value}" size="{@size}" /> <xsl:if test="@tip"> <img src="skins/phptools/img/ic_help.gif" hspace="2" width="11" height="11" border="0" alt="" onmouseover="DisplayTip('{@tip}');" onmouseout="HideTip();" /> </xsl:if> <xsl:if test="@required = 'yes'"> <img src="skins/phptools/img/ic_required.gif" hspace="2" width="11" height="11" border="0" alt="" /> </xsl:if> </xsl:template> <!-- Password Field --> <xsl:template match="passwordfield"> <input type="password" name="{@name}" value="" size="{@size}" /> <xsl:if test="@tip"> <img src="skins/phptools/img/ic_help.gif" hspace="2" width="11" height="11" border="0" alt="" onmouseover="DisplayTip('{@tip}');" onmouseout="HideTip();" /> </xsl:if> </xsl:template> <!-- Link --> <xsl:template match="a"><a href="{@href}" target="{@target}"><xsl:apply-templates /></a></xsl:template> <!-- Br --> <xsl:template match="br"><br /></xsl:template> <!-- Lista --> <xsl:template match="list"> <ul> <xsl:for-each select="item"> <li><xsl:apply-templates /></li> </xsl:for-each> </ul> </xsl:template> <!-- Texto dentro de uma lista --> <xsl:template match="list/item/text"> <div><xsl:apply-templates /></div> </xsl:template> <!-- Tabela --> <xsl:template match="table"> <table width="100%" align="center" border="0" cellpadding="0" cellspacing="0"> <!-- Header --> <tr> <th width="14" align="left" valign="top" class="b2_left" scope="col"><img src="skins/phptools/img/b2_ctl.gif" width="14" height="14" alt="" /></th> <xsl:for-each select="header/item"> <th class="b2_header"><xsl:value-of select="text()" /></th> </xsl:for-each> <th width="14" align="right" valign="top" class="b2_right" scope="col"><img src="skins/phptools/img/b2_ctr.gif" width="14" height="14" alt="" /></th> </tr> <!-- Data --> <xsl:for-each select="row"> <tr> <td width="14" class="b2_left"></td> <xsl:for-each select="item"> <td class="b2_content" nowrap="nowrap"><xsl:value-of select="text()" /></td> </xsl:for-each> <td width="14" class="b2_right"></td> </tr> </xsl:for-each> <!-- Footer --> <tr> <td width="14" align="left" valign="bottom" class="b2_left"><img src="skins/phptools/img/b2_cbl.gif" width="14" height="14" class="b2_left" alt="" /></td> <td class="b2_bottom" colspan="{count(header/item)}"></td> <td width="14" align="right" valign="bottom" class="b2_right"><img src="skins/phptools/img/b2_cbr.gif" width="14" height="14" alt="" /></td> </tr> </table> </xsl:template> </xsl:stylesheet> --- NEW FILE: tip.js --- (This appears to be a binary file; contents omitted.) --- NEW FILE: style.css --- /* * $Id: style.css,v 1.1.2.1 2004/07/11 13:37:20 hugo_pl Exp $ */ /** * Olho da caixa #1 */ .b1_eye { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-weight: bold; color: #FFFFFF; padding-left: 10px; } /** * Titulo da caixa #1 */ .b1_title, .secao { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-weight: bold; color: #308892; padding-bottom: 10px; } /** * Conteudo */ .content, .content table { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #333333; background-color: #E9E9E9; } /** * Linha horizontal com DIV */ div.horizontalline { background-color: #448CCB; width: 100%; } /** * Dicas */ .tip { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; font-style: italic; color: #666666; } .tip .title { font-style: normal; font-weight: bold; color: #006699; background: none; } .tip .lighttitle { font-style: normal; font-weight: bold; color: #FFFFFF; background: none; } /** * Menu */ .menu_title { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-style: italic; color: #006699; padding-right: 10px; } .menu_opt, .menu_opt a, .menu_opt a:link, .menu_opt a:visited, .menu_opt:active { font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: bold; color: #333333; font-size: 12px; font-style: normal; padding-top: 5px; text-decoration: none; cursor: pointer; } .menu_subopt a, .menu_subopt a:visited, .menu_subopt a:link, .menu_subopt a:active { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-weight: normal; color: #333333; padding-left: 20px; text-decoration: none; cursor: pointer; } .menu_subopt a:hover { color: #308892; } /* Error */ .error { font-size: 12px; color: #FF2222; font-weight: bold; text-align: center; } .warning { color: #FF2222; } iframe { background-color: #FFF; } /** * Form */ form { margin: 0px; } fieldset { border: 1px solid #448CCB; } legend { font-weight: bold; color: #308892; } code { border: 1px dashed #448CCB; color: #000000; padding: 5px; background: #FFFFFF; } /* Descrição do campo 1ª coluna */ .formtable tr td { padding-top: 2px; padding-bottom: 2px; padding-right: 5px; } /* Campo 2ª e demais colunas */ .formtable tr td+td { padding-top: 2px; padding-bottom: 2px; } /** * Redefinies de tags */ body { margin: 10px; } a, a:visited, a:active a:link { color: #308892; text-decoration: none; } a:hover { text-decoration: underline; } ul { font-family: Verdana, Arial, Helvetica, sans-serif; list-style-image: url(img/bullet.gif); } ul div { font-style: italic; padding-left: 20px; } select, textarea, input { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; border: 1px solid #308892; color: #308892; font-weight: bold; } input:focus, textarea:focus, select:focus { background-color: #f3f3f3; } input:hover, input:hover.checkbox, textarea:hover, select:hover { border-color: #ffae00; } input.button, button { background-color: #FFFFFF; } input:hover.button { color: #ffae00; } input.radio, input.checkbox { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-weight: bold; border: none; } textarea.code { font-family: monospace; color: #333333; padding: 2px; width: 100%; font-size: 12px; } .hide { display: none; } /** * Tip Layer */ #tiplayer { position: absolute; top: 0px; left: 0px; display: none; } #tiplayer.show { display: inline; } /** * Box #2 */ th { border-bottom: 1px solid #448CCB; background-color: #FFFFFF; } .b2_content { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #333333; padding-left: 3px; padding-right: 3px; } .b2_bottom { font-family: Verdana, Arial, Helvetica, sans-serif; background-image: url(img/b2_bgb.gif); background-repeat: repeat-x; background-position: bottom; font-size: 11px; } .b2_right { background-image: url(img/b2_bgr.gif); background-repeat: repeat-y; background-position: right; padding-right: 0px; } .b2_left { background-image: url(img/b2_bgl.gif); background-repeat: repeat-y; background-position: left; padding-right: 0px; } .b2_header { background-image: url(img/b2_bgt.gif); background-repeat: repeat-x; background-position: top; padding-right: 3px; padding-left: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; /* font-style: italic;*/ text-align: left; color: #448CCB; } .pagenumber { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-weight: bold; color: #448CCB; } /** * Correção dos bugs de CSS do IE */ .ie_bug1 { border: 1px solid #E9E9E9; } --- NEW FILE: menu.js --- /** * JavaScripts usado no Menu * $Id: menu.js,v 1.1.2.1 2004/07/11 13:37:20 hugo_pl Exp $ */ /** * Emula Array.push() em navegadores idosos */ function Array_push() { for (var i = 0; i < arguments.length; i++) this[this.length] = arguments[i]; return this.length } if (typeof Array.prototype.push == "undefined") Array.prototype.push = Array_push; /** * Menu */ function Menu() { this.opts = new Array(); this.subopts = new Array(); this.menuDiv = document.getElementById("menu"); /** * Adiciona uma opção ao menu */ this.addOpt = function(nome, desc, link, selected) { this.opts.push( new Array(nome, desc, link, selected) ); this.subopts.push( new Array() ); } /** * Adiciona uma subopção ao menu */ this.addSubOpt = function(nome, desc, link) { this.subopts[this.subopts.length-1].push( new Array( nome, desc, link ) ); } /** * Mostra o menu */ this.display = function() { // Constroi o menu. var i,j; for (i = 0; i < this.opts.length; i++) { if (!this.subopts[i].length) { /** * Menu Seta com link */ var div = document.createElement("DIV"); div._over = false; div._imgover = 'skins/phptools/img/menu_bso.gif'; div._imgout = 'skins/phptools/img/menu_bs.gif'; div._imgid = 'imgmenu'+i; div.onmouseover = this.changeMenu; div.onmouseout = this.changeMenu; div.className = 'menu_opt'; div.innerHTML = "<img id=\"imgmenu"+i+"\" src=\"skins/phptools/img/menu_bs.gif\" width=\"13\" height=\"13\" align=\"absmiddle\"> <a href=\""+this.opts[i][2]+"\"onMouseOver=\"return SetTip('"+this.opts[i][1]+"');\" onMouseOut=\"return UnsetTip();\">"+this.opts[i][0]+"</a>"; this.menuDiv.appendChild(div); } else { /** * Menu +, com filhos */ var div = document.createElement("DIV"); div._over = false; div._imgover = 'skins/phptools/img/menu_bpo.gif'; div._imgout = 'skins/phptools/img/menu_bp.gif'; div._imgid = 'imgmenu'+i; div.onmouseover = this.changeMenu; div.onmouseout = this.changeMenu; div.onclick = this.showHideMenu; div.className = 'menu_opt'; div._submenuid = "submenu"+i; div.innerHTML = "<img id=\"imgmenu"+i+"\" src=\"skins/phptools/img/menu_bp.gif\" width=\"13\" height=\"13\" align=\"absmiddle\"> <span onMouseOver=\"return SetTip('"+this.opts[i][1]+"');\" onMouseOut=\"return UnsetTip();\">"+this.opts[i][0]+"</span>"; // SubOpções var div2 = document.createElement("DIV"); div2.id = "submenu"+i; if (!this.opts[i][3]) div2.className = 'hide'; var subMenus = ""; for (j = 0; j < this.subopts[i].length; j++) { subMenus += "<div class=\"menu_subopt\"><a href=\""+this.subopts[i][j][2]+"\" onMouseOver=\"return SetTip('"+this.subopts[i][j][1]+"');\" onMouseOut=\"return UnsetTip();\">"+this.subopts[i][j][0]+"</a></div>"; } div2.innerHTML = subMenus; this.menuDiv.appendChild(div); this.menuDiv.appendChild(div2); } } } this.changeMenu = function() { var oImg = document.getElementById( this._imgid ); this._over = !this._over; if (this._over) oImg.src = this._imgover; else oImg.src = this._imgout; } this.showHideMenu = function() { var oSubMenu = document.getElementById( this._submenuid ); if (oSubMenu.className == 'hide') { oSubMenu.className = ''; this._imgover = 'skins/phptools/img/menu_bm.gif'; this._imgout = 'skins/phptools/img/menu_bmo.gif'; } else { oSubMenu.className = 'hide'; this._imgover = 'skins/phptools/img/menu_bp.gif'; this._imgout = 'skins/phptools/img/menu_bpo.gif'; } this._over = false; var oImg = document.getElementById( this._imgid ); oImg.src = this._imgout; } } /* function ChangeMenu( obj, type, imgid ) { var oImg = document.getElementById( 'imgmenu'+imgid ); var newSrc = ""; var imgBase = 'img/menu_b'+type; if (!oImg._over) { if (obj.className == 'menu_opt') newSrc = imgBase+'o.gif'; else newSrc = imgBase+'.gif'; oImg._over = true; } else { if (obj.className == 'menu_opt') newSrc = imgBase+'.gif'; else newSrc = imgBase+'o.gif'; oImg._over = false; } oImg.src = newSrc; } */ |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:35:48
|
Update of /cvsroot/muspa/muspa/skins/phptools/img In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21064/img Log Message: Directory /cvsroot/muspa/muspa/skins/phptools/img added to the repository --> Using per-directory sticky tag `MUSPA_2_0_branch' |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:35:27
|
Update of /cvsroot/muspa/muspa/skins/phptools In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21024/phptools Log Message: Directory /cvsroot/muspa/muspa/skins/phptools added to the repository --> Using per-directory sticky tag `MUSPA_2_0_branch' |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:35:14
|
Update of /cvsroot/muspa/muspa/skins In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20900/skins Log Message: Directory /cvsroot/muspa/muspa/skins added to the repository --> Using per-directory sticky tag `MUSPA_2_0_branch' |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:34:11
|
Update of /cvsroot/muspa/muspa/modules/opcoes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20748/opcoes Modified Files: Tag: MUSPA_2_0_branch opcoes.php opcoes_conf.php Log Message: Mudanças para o XML... Index: opcoes_conf.php =================================================================== RCS file: /cvsroot/muspa/muspa/modules/opcoes/opcoes_conf.php,v retrieving revision 1.1 retrieving revision 1.1.2.1 diff -C2 -d -r1.1 -r1.1.2.1 *** opcoes_conf.php 4 Jul 2004 04:47:36 -0000 1.1 --- opcoes_conf.php 11 Jul 2004 13:34:02 -0000 1.1.2.1 *************** *** 27,36 **** function moduleName() { ! return 'Opções'; } /** Descrição do modulo */ function moduleDescription() { ! return 'Opções gerais, dentre elas alterar senha.'; } --- 27,36 ---- function moduleName() { ! return 'Opções'; } /** Descrição do modulo */ function moduleDescription() { ! return 'Opções gerais, dentre elas alterar senha.'; } *************** *** 58,74 **** "nome" => "Alterar senha", "descricao" => "Altera sua senha", ! "link" => "?m=opcoes&action=alterarsenha", "privs" => PRIV_NORMAL ), array( ! "nome" => "Usuários", ! "descricao" => "Cria um usuário", ! "link" => "?m=opcoes&action=listusers", "privs" => PRIV_ADMIN ), array( ! "nome" => "Módulos", ! "descricao" => "Habilita/desabilita módulos do sistema.", ! "link" => "?m=opcoes&action=modules", "privs" => PRIV_ADMIN ), --- 58,74 ---- "nome" => "Alterar senha", "descricao" => "Altera sua senha", ! "link" => "?m=opcoes&action=alterarsenha", "privs" => PRIV_NORMAL ), array( ! "nome" => "Usuários", ! "descricao" => "Cria um usuário", ! "link" => "?m=opcoes&action=listusers", "privs" => PRIV_ADMIN ), array( ! "nome" => "Módulos", ! "descricao" => "Habilita/desabilita módulos do sistema.", ! "link" => "?m=opcoes&action=modules", "privs" => PRIV_ADMIN ), Index: opcoes.php =================================================================== RCS file: /cvsroot/muspa/muspa/modules/opcoes/opcoes.php,v retrieving revision 1.2 retrieving revision 1.2.2.1 diff -C2 -d -r1.2 -r1.2.2.1 *** opcoes.php 4 Jul 2004 04:47:36 -0000 1.2 --- opcoes.php 11 Jul 2004 13:34:02 -0000 1.2.2.1 *************** *** 19,22 **** --- 19,23 ---- * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. * + * $Id$ *******************************************************************************/ *************** *** 77,89 **** function alterarSenha() { ! $error = ""; if (count($_POST)) { if (!isset($_POST['senha']) || !isset($_POST['confirmacao'])) ! $error = "Você precisa preencher o formulário por completo."; elseif ($_POST['senha'] != $_POST['confirmacao']) ! $error = "A senha digitada não confere com a confirmação."; elseif (strlen($_POST['senha']) < 4) ! $error = "A senha precisa ter pelo menos 4 caracteres."; else { --- 78,90 ---- function alterarSenha() { ! $error = ''; if (count($_POST)) { if (!isset($_POST['senha']) || !isset($_POST['confirmacao'])) ! $error = 'Você precisa preencher o formulário por completo.'; elseif ($_POST['senha'] != $_POST['confirmacao']) ! $error = 'A senha digitada não confere com a confirmação.'; elseif (strlen($_POST['senha']) < 4) ! $error = 'A senha precisa ter pelo menos 4 caracteres.'; else { *************** *** 93,97 **** .'WHERE id='.$this->aUser['id'].' LIMIT 1', __FILE__, __LINE__); ! header("Location: ?m=opcoes&action=senhaalterada"); exit; } --- 94,98 ---- .'WHERE id='.$this->aUser['id'].' LIMIT 1', __FILE__, __LINE__); ! header('Location: ?m=opcoes&action=senhaalterada'); exit; } *************** *** 99,103 **** $this->setCaption('Alterando senha'); ! $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/alterarsenha.htm'); if ($error) { --- 100,104 ---- $this->setCaption('Alterando senha'); ! $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/alterarsenha.xml'); if ($error) { *************** *** 124,127 **** --- 125,140 ---- else $aData['USUÁRIO'] = 'selected="selected"'; + $aRealModules = GetAllModules(); + $aModules = array(); + foreach ($aRealModules as $module) + { + $aModules['ID'][] = $module['module']; + $aModules['NOME'][] = $module['name']; + $aModules['DESC'][] = $module['desc']; + $aModules['AUTOR'][] = $module['author']; + $aModules['VERSAO'][] = $module['version']; + } + + $this->tmpl->addVars('modules', $aModules); $this->tmpl->addVars('content', $aData); } *************** *** 133,142 **** { return array( ! array('id', 'userid', FRM_OPCIONAL, "/^[0-9]+$/"), array('nome', 'nome', FRM_OBRIGATORIO), ! array('user', 'login', FRM_OBRIGATORIO, "/^[a-z0-9_-]+$/", "precisa ser em caixa baixa e sem acentos"), ! array('pwd', 'senha', FRM_OBRIGATORIO, "/^[a-z0-9]+$/", "precisa ser em caixa baixa, sem acentos, hiféns ou underlines"), ! array('privs', 'privilégios', FRM_OBRIGATORIO, "/^(Administrador|Usuário)$/"), ! array('bloqueado', 'bloqueado', FRM_OPCIONAL, "/^1$/") ); } --- 146,155 ---- { return array( ! array('id', 'userid', FRM_OPCIONAL, '/^[0-9]+$/'), array('nome', 'nome', FRM_OBRIGATORIO), ! array('user', 'login', FRM_OBRIGATORIO, '/^[a-z0-9_-]+$/', 'precisa ser em caixa baixa e sem acentos'), ! array('pwd', 'senha', FRM_OBRIGATORIO, '/^[a-z0-9]+$/', 'precisa ser em caixa baixa, sem acentos, hiféns ou underlines'), ! array('privs', 'privilégios', FRM_OBRIGATORIO, '/^(Administrador|Usuário)$/'), ! array('bloqueado', 'bloqueado', FRM_OPCIONAL, '/^1$/') ); } *************** *** 156,161 **** { // Verifica se existe alguém com esse login. ! $this->db->query("SELECT id FROM ".PRE_TABLE."users " ! ." WHERE user='".$_POST['user']."'"); if ($this->db->numRows()) $res = array('ERROR' => 'Já existe um usuário cadastrado com este login.'); --- 169,174 ---- { // Verifica se existe alguém com esse login. ! $this->db->query('SELECT id FROM '.PRE_TABLE.'users ' ! .' WHERE user="'.$this->db->escapeString($_POST['user']).'"'); if ($this->db->numRows()) $res = array('ERROR' => 'Já existe um usuário cadastrado com este login.'); *************** *** 164,181 **** { // TUdo Ok, cadastre ! $this->db->query("INSERT INTO ".PRE_TABLE."users " ! ."(nome, user, pwd, privs, bloqueado) VALUES(" ! ."'".$this->db->escapeString($_POST['nome'])."', " ! ."'".$_POST['user']."', " ! ."PASSWORD('".$_POST['pwd']."'), " ! ."'".$_POST['privs']."', " ! ."'".(($_POST['bloqueado']=='1') ? 'Y' : 'N')."' " ! .");", __FILE__, __LINE__); ! header("Location: ?m=opcoes&action=listusers"); exit; } else { ! $this->setCaption("Criando usuário"); $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/userlist.htm'); $this->tmpl->setAttribute('lista', 'visibility', 'hidden'); --- 177,194 ---- { // TUdo Ok, cadastre ! $this->db->query('INSERT INTO '.PRE_TABLE.'users ' ! .'(nome, user, pwd, privs, bloqueado) VALUES(' ! .'"'.$this->db->escapeString($_POST['nome']).'", ' ! .'"'.$_POST['user'].'", ' ! .'PASSWORD("'.$_POST['pwd'].'"), ' ! .'"'.$_POST['privs'].'", ' ! .'"'.(($_POST['bloqueado']=='1') ? 'Y' : 'N').'");' ! , __FILE__, __LINE__); ! header('Location: ?m=opcoes&action=listusers'); exit; } else { ! $this->setCaption('Criando usuário'); $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/userlist.htm'); $this->tmpl->setAttribute('lista', 'visibility', 'hidden'); *************** *** 195,203 **** $id = (int)$_GET['id']; if (!$id) ! SemiFatalError("Este usuário não existe.", "?m=opcoes&action=listusers"); ! $this->setCaption("Editando usuário"); ! $this->db->query("SELECT id, nome, user, privs, bloqueado" ! ." FROM ".PRE_TABLE."users WHERE id=".$id, __FILE__, __LINE__); $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/edituser.htm'); --- 208,216 ---- $id = (int)$_GET['id']; if (!$id) ! SemiFatalError('Este usuário não existe.', '?m=opcoes&action=listusers'); ! $this->setCaption('Editando usuário'); ! $this->db->query('SELECT id, nome, user, privs, bloqueado FROM ' ! .PRE_TABLE.'users WHERE id='.$id, __FILE__, __LINE__); $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/edituser.htm'); *************** *** 217,221 **** if (!$_POST['id']) ! SemiFatalError("Usuário não especificado!", "?m=opcoes&action=listusers"); if ($res === true) --- 230,234 ---- if (!$_POST['id']) ! SemiFatalError('Usuário não especificado!', '?m=opcoes&action=listusers'); if ($res === true) *************** *** 242,251 **** } $this->db->query($query." WHERE id=".$_POST['id'], __FILE__, __LINE__); ! header("Location: ?m=opcoes&action=listusers"); exit; } else { ! $this->setCaption("Criando usuário"); $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/userlist.htm'); $this->tmpl->setAttribute('lista', 'visibility', 'hidden'); --- 255,264 ---- } $this->db->query($query." WHERE id=".$_POST['id'], __FILE__, __LINE__); ! header('Location: ?m=opcoes&action=listusers'); exit; } else { ! $this->setCaption('Criando usuário'); $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/userlist.htm'); $this->tmpl->setAttribute('lista', 'visibility', 'hidden'); *************** *** 296,305 **** $this->db->query($query, __FILE__, __LINE__); ! header("Location: ?m=opcoes&action=listusers"); exit; } } ! $this->setCaption("Listando usuários"); $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/userlist.htm'); --- 309,318 ---- $this->db->query($query, __FILE__, __LINE__); ! header('Location: ?m=opcoes&action=listusers'); exit; } } ! $this->setCaption('Listando usuários'); $this->tmpl->readTemplatesFromFile('modules/opcoes/templates/userlist.htm'); *************** *** 377,400 **** $aModules = array(); // Lista todos os modulos disponiveis ! $dir = opendir('modules'); ! while(($moduledir = readdir($dir)) !== false) { ! $class = $moduledir.'_conf'; ! if ($moduledir == "." || $moduledir == "..") ! continue; ! if (!file_exists('modules/'.$moduledir.'/'.$class.'.php')) ! continue; ! include_once('modules/'.$moduledir.'/'.$class.'.php'); ! if (!class_exists($class)) ! continue; ! if (get_parent_class($class) != 'conf') ! continue; ! $aModules['MODULO'][] = call_user_func(array($class, "moduleName")); ! $aModules['DESCRICAO'][] = call_user_func(array($class, "moduleDescription")); ! $aModules['AUTOR'][] = call_user_func(array($class, "author")); ! $aModules['VERSAO'][] = call_user_func(array($class, "version")); ! $aModules['CLASSNAME'][] = $moduledir; ! if (isset($g_aModuleList[$moduledir])) { $aModules['SIM'][] = 'checked="checked"'; --- 390,404 ---- $aModules = array(); + $aRealModules = GetAllModules(); + // Lista todos os modulos disponiveis ! foreach($aRealModules as $module) { ! $aModules['MODULO'][] = $module['name']; ! $aModules['DESCRICAO'][] = $module['desc']; ! $aModules['AUTOR'][] = $module['author']; ! $aModules['VERSAO'][] = $module['version']; ! $aModules['CLASSNAME'][] = $module['module']; ! if ($module['enabled']) { $aModules['SIM'][] = 'checked="checked"'; *************** *** 406,417 **** $aModules['NAO'][] = 'checked="checked"'; } ! if ($moduledir == 'opcoes') $aModules['DISABLED'][] = 'disabled="disabled"'; else $aModules['DISABLED'][] = ''; ! $ordem = array_search($moduledir, $aCurOrdem); $aModules['ORDEM'][] = ($ordem !== false) ? $ordem+1 : ''; } - closedir($dir); $this->tmpl->addVars('modulelist', $aModules); --- 410,420 ---- $aModules['NAO'][] = 'checked="checked"'; } ! if ($module['module'] == 'opcoes') $aModules['DISABLED'][] = 'disabled="disabled"'; else $aModules['DISABLED'][] = ''; ! $ordem = array_search($module['module'], $aCurOrdem); $aModules['ORDEM'][] = ($ordem !== false) ? $ordem+1 : ''; } $this->tmpl->addVars('modulelist', $aModules); *************** *** 420,425 **** /** * Atualiza a lista de módulos - * TODO: Fazer ser possivel o cara escolher a ordem de aparição dos módulos no - * menu. */ function updateModules() --- 423,426 ---- *************** *** 466,468 **** } }; ! ?> \ No newline at end of file --- 467,469 ---- } }; ! ?> |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:34:11
|
Update of /cvsroot/muspa/muspa/modules/noticia In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20748/noticia Modified Files: Tag: MUSPA_2_0_branch noticia_conf.php Log Message: Mudanças para o XML... Index: noticia_conf.php =================================================================== RCS file: /cvsroot/muspa/muspa/modules/noticia/noticia_conf.php,v retrieving revision 1.1 retrieving revision 1.1.2.1 diff -C2 -d -r1.1 -r1.1.2.1 *** noticia_conf.php 4 Jul 2004 04:47:12 -0000 1.1 --- noticia_conf.php 11 Jul 2004 13:34:02 -0000 1.1.2.1 *************** *** 64,68 **** 'nome' => 'Listar', 'descricao' => 'Lista as notícias', ! 'link' => '?m=noticia&action=listar', 'privs' => PRIV_NORMAL ), --- 64,68 ---- 'nome' => 'Listar', 'descricao' => 'Lista as notícias', ! 'link' => '?m=noticia&action=listar', 'privs' => PRIV_NORMAL ), *************** *** 70,74 **** 'nome' => 'Cadastrar', 'descricao' => 'Cadastra uma notícia', ! 'link' => '?m=noticia&action=showcadastro', 'privs' => PRIV_NORMAL ), --- 70,74 ---- 'nome' => 'Cadastrar', 'descricao' => 'Cadastra uma notícia', ! 'link' => '?m=noticia&action=showcadastro', 'privs' => PRIV_NORMAL ), *************** *** 76,80 **** 'nome' => 'Seções/Modelos', 'descricao' => 'Configura as seções de notícia', ! 'link' => '?m=noticia&action=secoesmodelos', 'privs' => PRIV_ADMIN ), --- 76,80 ---- 'nome' => 'Seções/Modelos', 'descricao' => 'Configura as seções de notícia', ! 'link' => '?m=noticia&action=secoesmodelos', 'privs' => PRIV_ADMIN ), *************** *** 82,86 **** 'nome' => 'CSS\\\'s', 'descricao' => 'Configura CSS\\\\\'s disponíveis para as notícias', ! 'link' => '?m=noticia&action=css', 'privs' => PRIV_ADMIN ) --- 82,86 ---- 'nome' => 'CSS\\\'s', 'descricao' => 'Configura CSS\\\\\'s disponíveis para as notícias', ! 'link' => '?m=noticia&action=css', 'privs' => PRIV_ADMIN ) *************** *** 90,92 **** ! ?> \ No newline at end of file --- 90,92 ---- ! ?> |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:33:41
|
Update of /cvsroot/muspa/muspa/sys In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20656 Modified Files: Tag: MUSPA_2_0_branch admin.php entrada.php login.php logout.php Log Message: Mudanças para o XML... Index: login.php =================================================================== RCS file: /cvsroot/muspa/muspa/sys/login.php,v retrieving revision 1.2 retrieving revision 1.2.2.1 diff -C2 -d -r1.2 -r1.2.2.1 *** login.php 13 Mar 2004 03:26:42 -0000 1.2 --- login.php 11 Jul 2004 13:33:31 -0000 1.2.2.1 *************** *** 62,67 **** function _loadLoginScreen() { ! $this->tmpl->readTemplatesFromFile('sys/templates/login.htm'); ! $this->tmpl->readTemplatesFromFile('sys/templates/tip.htm'); $this->tmpl->addVar('main', 'VERSION', VERSION); } --- 62,66 ---- function _loadLoginScreen() { ! $this->tmpl->readTemplatesFromFile('sys/templates/login.xml'); $this->tmpl->addVar('main', 'VERSION', VERSION); } Index: logout.php =================================================================== RCS file: /cvsroot/muspa/muspa/sys/logout.php,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -C2 -d -r1.1.1.1 -r1.1.1.1.2.1 *** logout.php 19 Feb 2004 03:15:26 -0000 1.1.1.1 --- logout.php 11 Jul 2004 13:33:31 -0000 1.1.1.1.2.1 *************** *** 36,40 **** $this->cleanUp(); ! $this->tmpl->readTemplatesFromFile('sys/templates/logout.htm'); $this->display(); } --- 36,47 ---- $this->cleanUp(); ! $this->tmpl->readTemplatesFromFile('sys/templates/msgbox.xml'); ! $this->tmpl->addVars('main', array ( ! 'TITLE' => 'Logout', ! 'SUBTITLE' => 'logout', ! 'CAPTION' => 'Logout', ! 'MSG' => 'Você saiu do sistema', ! 'URL' => './', ! 'VERSION' => VERSION)); $this->display(); } Index: entrada.php =================================================================== RCS file: /cvsroot/muspa/muspa/sys/entrada.php,v retrieving revision 1.2 retrieving revision 1.2.2.1 diff -C2 -d -r1.2 -r1.2.2.1 *** entrada.php 4 Jul 2004 04:48:24 -0000 1.2 --- entrada.php 11 Jul 2004 13:33:31 -0000 1.2.2.1 *************** *** 45,49 **** // Mostra a tela... ! $this->tmpl->readTemplatesFromFile("sys/templates/entrada.htm"); $this->tmpl->addVars('modulelist', $aModules); --- 45,49 ---- // Mostra a tela... ! $this->tmpl->readTemplatesFromFile("sys/templates/entrada.xml"); $this->tmpl->addVars('modulelist', $aModules); Index: admin.php =================================================================== RCS file: /cvsroot/muspa/muspa/sys/admin.php,v retrieving revision 1.10 retrieving revision 1.10.2.1 diff -C2 -d -r1.10 -r1.10.2.1 *** admin.php 4 Jul 2004 04:48:24 -0000 1.10 --- admin.php 11 Jul 2004 13:33:31 -0000 1.10.2.1 *************** *** 99,104 **** // Abre os templates ! $this->tmpl->readTemplatesFromFile('sys/templates/base.htm'); ! $this->tmpl->readTemplatesFromFile('sys/templates/tip.htm'); $this->_buildMenu(); --- 99,103 ---- // Abre os templates ! $this->tmpl->readTemplatesFromFile('sys/templates/base.xml'); $this->_buildMenu(); *************** *** 307,311 **** function display($template = 'main') { ! $this->tmpl->displayParsedTemplate($template); } --- 306,333 ---- function display($template = 'main') { ! // echo $this->tmpl->getParsedTemplate($template);exit; ! ! $xslt = xslt_create(); ! xslt_set_encoding($xslt, 'ISO-8859-1'); ! $skin = 'phptools'; ! ! // Aparentemente isso nao serve de nada.... ja que toda vez q tento usar ! // import no xsl ele da um erro... e nao avisa onde esta porra eh q ele ta ! // procurando o arquivo xsl do import... ! xslt_set_base($xslt, dirname(dirname(__FILE__)).'/skins/'.$skin); ! ! $args = array( ! '/_xml' => '<?xml version="1.0" encoding="ISO-8859-1"?>'.$this->tmpl->getParsedTemplate($template), ! '/_xsl' => implode('', file("skins/$skin/$skin.xsl")) ! ); ! $output = @xslt_process($xslt, 'arg:/_xml', 'arg:/_xsl', null, $args); ! if (!$output) ! { ! user_error('Erro processando XSLT ['.xslt_error($xslt).']', E_USER_ERROR); ! if (DEBUG) ! echo nl2br(htmlspecialchars($args['/_xml'])); ! } ! xslt_free($xslt); ! echo $output; } |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:32:43
|
Update of /cvsroot/muspa/muspa/include In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20514 Modified Files: Tag: MUSPA_2_0_branch util.php Log Message: Adicionado algumas coisas do sistema para poder desabilitar modulos por usuário. Index: util.php =================================================================== RCS file: /cvsroot/muspa/muspa/include/util.php,v retrieving revision 1.6 retrieving revision 1.6.2.1 diff -C2 -d -r1.6 -r1.6.2.1 *** util.php 1 Jul 2004 03:52:37 -0000 1.6 --- util.php 11 Jul 2004 13:32:34 -0000 1.6.2.1 *************** *** 22,28 **** *******************************************************************************/ ! define("FRM_OBRIGATORIO", 1); ! define("FRM_OPCIONAL", 0); ! define("FRM_DATA", 2); --- 22,28 ---- *******************************************************************************/ ! define('FRM_OBRIGATORIO', 1); ! define('FRM_OPCIONAL', 0); ! define('FRM_DATA', 2); *************** *** 60,64 **** // Como a bosta do PHP não tem unsigned int, nem long, temos que deixar o // numero do IP como uma string... ! return sprintf("%u", ip2long($ip)); } --- 60,64 ---- // Como a bosta do PHP não tem unsigned int, nem long, temos que deixar o // numero do IP como uma string... ! return sprintf('%u', ip2long($ip)); } *************** *** 242,243 **** --- 242,280 ---- return $ret; } + + /** + * Retorna uma array onde cada elemento é uma array com informações sobre o módulo. + * Todos os modulos, habilitados ou não, são retornados. + */ + function GetAllModules() + { + global $g_aModuleList; + + $ret = array(); + $dir = opendir('modules'); + while(($moduledir = readdir($dir)) !== false) + { + $class = $moduledir.'_conf'; + if ($moduledir == "." || $moduledir == "..") + continue; + if (!file_exists('modules/'.$moduledir.'/'.$class.'.php')) + continue; + include_once('modules/'.$moduledir.'/'.$class.'.php'); + if (!class_exists($class)) + continue; + if (get_parent_class($class) != 'conf') + continue; + + $ret[] = array( + 'module' => $moduledir, + 'name' => call_user_func(array($class, "moduleName")), + 'desc' => call_user_func(array($class, "moduleDescription")), + 'author' => call_user_func(array($class, "author")), + 'version' => call_user_func(array($class, "version")), + 'enabled' => isset($g_aModuleList[$moduledir]) + ); + } + closedir($dir); + + return $ret; + } |
From: Hugo P. L. <hu...@us...> - 2004-07-11 13:31:02
|
Update of /cvsroot/muspa/muspa In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20270 Modified Files: Tag: MUSPA_2_0_branch error_handler.php Log Message: aplica htmlspecialchars() a URL HTTP_REFER... Index: error_handler.php =================================================================== RCS file: /cvsroot/muspa/muspa/error_handler.php,v retrieving revision 1.2 retrieving revision 1.2.2.1 diff -C2 -d -r1.2 -r1.2.2.1 *** error_handler.php 19 Jun 2004 21:09:21 -0000 1.2 --- error_handler.php 11 Jul 2004 13:30:53 -0000 1.2.2.1 *************** *** 67,71 **** mail(ADMIN_MAIL, VERSION, $error); if (($num != E_NOTICE) && ($num != E_USER_NOTICE)) ! SemiFatalError('Houve um erro interno, o admnistrador foi avisado.'.$type, $_SERVER['HTTP_REFERER']); } else --- 67,71 ---- mail(ADMIN_MAIL, VERSION, $error); if (($num != E_NOTICE) && ($num != E_USER_NOTICE)) ! SemiFatalError('Houve um erro interno, o admnistrador foi avisado.'.$type, htmlspecialchars($_SERVER['HTTP_REFERER'])); } else |
Update of /cvsroot/muspa/muspa/img In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19266 Removed Files: Tag: MUSPA_2_0_branch arrow.gif b1_bgb.gif b1_bgl2.gif b1_bgl.gif b1_bgr2.gif b1_bgr.gif b1_cbl.gif b1_cbr.gif b1_ctl.gif b1_ctr.gif b2_bgb.gif b2_bgl.gif b2_bgr.gif b2_bgt.gif b2_cbl.gif b2_cbr.gif b2_ctl.gif b2_ctr.gif bar_center.gif bar_left.gif bar_right.gif bullet.gif h_end.gif h_start.gif ic_help.gif ic_required.gif line.gif menu_bgb.gif menu_bgr.gif menu_bm.gif menu_bmo.gif menu_bp.gif menu_bpo.gif menu_bs.gif menu_bso.gif menu_cbr.gif menu_ctr.gif page_next.gif page_prev.gif px.gif tip_bg_b.gif tip_bg_l.gif tip_bg_r.gif tip_bg_t.gif tip_cbl.gif tip_cbr.gif tip_ctl.gif tip_ctr.gif v.gif Log Message: Tudo quando for coisa de design vai para o diretório /skins/*/ --- menu_bm.gif DELETED --- --- b2_ctl.gif DELETED --- --- v.gif DELETED --- --- b2_bgl.gif DELETED --- --- bullet.gif DELETED --- --- h_end.gif DELETED --- --- menu_bgb.gif DELETED --- --- b1_bgr2.gif DELETED --- --- menu_bso.gif DELETED --- --- b2_bgb.gif DELETED --- --- b1_bgr.gif DELETED --- --- menu_bgr.gif DELETED --- --- tip_bg_l.gif DELETED --- --- b2_cbr.gif DELETED --- --- menu_ctr.gif DELETED --- --- menu_cbr.gif DELETED --- --- tip_cbr.gif DELETED --- --- b2_bgr.gif DELETED --- --- menu_bmo.gif DELETED --- --- bar_right.gif DELETED --- --- b1_cbl.gif DELETED --- --- b1_bgb.gif DELETED --- --- tip_ctl.gif DELETED --- --- tip_ctr.gif DELETED --- --- b1_bgl.gif DELETED --- --- menu_bpo.gif DELETED --- --- bar_left.gif DELETED --- --- b1_cbr.gif DELETED --- --- tip_bg_t.gif DELETED --- --- h_start.gif DELETED --- --- bar_center.gif DELETED --- --- menu_bp.gif DELETED --- --- page_prev.gif DELETED --- --- tip_bg_b.gif DELETED --- --- menu_bs.gif DELETED --- --- arrow.gif DELETED --- --- ic_required.gif DELETED --- --- line.gif DELETED --- --- tip_bg_r.gif DELETED --- --- b1_ctr.gif DELETED --- --- b2_ctr.gif DELETED --- --- b2_cbl.gif DELETED --- --- px.gif DELETED --- --- b1_ctl.gif DELETED --- --- ic_help.gif DELETED --- --- tip_cbl.gif DELETED --- --- page_next.gif DELETED --- --- b2_bgt.gif DELETED --- --- b1_bgl2.gif DELETED --- |
From: Hugo P. L. <hu...@us...> - 2004-07-10 08:42:04
|
Update of /cvsroot/muspa/muspa In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14845 Modified Files: AUTHORS Log Message: adicionado psy. Index: AUTHORS =================================================================== RCS file: /cvsroot/muspa/muspa/AUTHORS,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AUTHORS 20 Mar 2004 22:08:59 -0000 1.2 --- AUTHORS 10 Jul 2004 08:41:56 -0000 1.3 *************** *** 7,11 **** MUSPA Team: ! ... --- 7,12 ---- MUSPA Team: ! Edmilson "Psychopath_mind" Ferreira da Silva ! Developer |
From: Hugo P. L. <hu...@us...> - 2004-07-10 08:40:24
|
Update of /cvsroot/muspa/muspa/modules/noticia In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14469 Modified Files: noticia.php Log Message: Algumas mudanças nas mudanças ;-) Notas: - Quando uma string for constante, tipo um texto, use aspas simples. - a váriavel $this->aUser['privs'] guarda valores '1' ou '2', ok, mas existem constantes para esses valores, PRIV_ADMIN e PRIV_NORMAL, use as constantes ao invés dos valores, pois se um dia os valores mudarem vai ser mais fácil. Index: noticia.php =================================================================== RCS file: /cvsroot/muspa/muspa/modules/noticia/noticia.php,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** noticia.php 9 Jul 2004 21:59:29 -0000 1.15 --- noticia.php 10 Jul 2004 08:40:15 -0000 1.16 *************** *** 436,452 **** /// Lista os modelos disponíveis $this->db->query('SELECT id, nome, html FROM '.PRE_TABLE.'noticia_modelos '); - - // Verifica se existe algum modelo criado [x] - if (!(bool)$this->db->numRows()) - { - $error_1 = "".ucfirst($this->aUser['nome'])."," - ."<p>Para cadastrar uma notícia é necessário que seu Administrador crie um modelo e uma seção, nesta mesma ordem.</p>"; - $error_2 = "É necessário criar pelo menos um modelo e uma seção, nesta ordem, para poder abilitar o formulário de cadastro de notícias."; ! $url_1 = "?m=entrada"; ! $url_2 = "?m=noticia&action=shownovomodelo"; ! ! SemiFatalError("${'error_' . $this->aUser['privs']}", "${'url_' . $this->aUser['privs']}"); ! } // Carrega os templates --- 436,445 ---- /// Lista os modelos disponíveis $this->db->query('SELECT id, nome, html FROM '.PRE_TABLE.'noticia_modelos '); ! // Verifica se existe algum modelo criado [x] ! if (!$this->db->numRows()) ! SemiFatalError($this->aUser['privs'] == PRIV_ADMIN ? ! 'É necessário criar pelo menos um modelo e uma seção, nesta ordem, para poder habilitar o formulário de cadastro de notícias.' : 'Não existem modelos cadastrados, avise ao Administrador.', ! $this->aUser['privs'] == PRIV_ADMIN ? '?m=noticia&action=shownovomodelo' : '?m=entrada'); // Carrega os templates *************** *** 483,497 **** // Verifica se existe alguma seção criada [x] ! if (!(bool)$this->db->numRows()) ! { ! $error_1 = "".ucfirst($this->aUser['nome'])."," ! ."<p>É necessário que o seu administrador crie pelo menos uma seção para que seja possível cadastrar uma notícia.</p>"; ! $error_2 = "É necessário que seja criada pelo menos uma seção para abilitar o cadastro de notícias."; ! ! $url_1 = "?m=entrada"; ! $url_2 = "?m=noticia&action=shownovasecao"; ! ! SemiFatalError("${'error_' . $this->aUser['privs']}", "${'url_' . $this->aUser['privs']}"); ! } --- 476,484 ---- // Verifica se existe alguma seção criada [x] ! if (!$this->db->numRows()) ! SemiFatalError( $this->aUser['privs'] == PRIV_ADMIN ? ! 'É necessário que seja criada pelo menos uma seção para habilitar o cadastro de notícias.' : ! 'Seu usuário não esta habilitado a cadastrar notícias em nenhuma seção, fale com o administrador.' ! , $this->aUser['privs'] == PRIV_ADMIN ? '?m=noticia&action=shownovasecao' : '?m=entrada'); |
From: Edmilson F. da S. <psy...@us...> - 2004-07-09 21:59:41
|
Update of /cvsroot/muspa/muspa/modules/noticia In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20250 Modified Files: noticia.php Log Message: Adicionada a validação do formulário de cadastro de notícias. Index: noticia.php =================================================================== RCS file: /cvsroot/muspa/muspa/modules/noticia/noticia.php,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** noticia.php 5 Jul 2004 04:53:58 -0000 1.14 --- noticia.php 9 Jul 2004 21:59:29 -0000 1.15 *************** *** 433,440 **** --- 433,473 ---- function displayForm( &$aValues ) { + + /// Lista os modelos disponíveis + $this->db->query('SELECT id, nome, html FROM '.PRE_TABLE.'noticia_modelos '); + + // Verifica se existe algum modelo criado [x] + if (!(bool)$this->db->numRows()) + { + $error_1 = "".ucfirst($this->aUser['nome'])."," + ."<p>Para cadastrar uma notícia é necessário que seu Administrador crie um modelo e uma seção, nesta mesma ordem.</p>"; + $error_2 = "É necessário criar pelo menos um modelo e uma seção, nesta ordem, para poder abilitar o formulário de cadastro de notícias."; + + $url_1 = "?m=entrada"; + $url_2 = "?m=noticia&action=shownovomodelo"; + + SemiFatalError("${'error_' . $this->aUser['privs']}", "${'url_' . $this->aUser['privs']}"); + } + // Carrega os templates $this->tmpl->readTemplatesFromFile('modules/noticia/templates/formulario.htm'); $this->tmpl->readTemplatesFromFile('sys/templates/editor.htm'); + /** Monta JS Array de todos os Modelos */ + $modelos = "[\n"; + // Monta a array do JavaScript + while ($row = $this->db->fetchAssoc()) + { + if (isset($aValues['modelo'])) + $selected = $aValues['modelo'] ? 'true' : 'false'; + else + $selected = ''; + $modelos .= "\t[ ".$row['id'].", '".$row['nome']."', ".$selected." ],\n"; + } + $modelos = rtrim($modelos, ",\n")."\n]"; + $this->tmpl->addVar('formulario', 'MODELOSARRAY', $modelos); + /** --- **/ + + if (isset($aValues['fixed'])) $aValues['fixed'] = ($aValues['fixed']) ? 'checked="checked"' : ''; *************** *** 444,452 **** $this->tmpl->addVars('formulario', $aValues); ! /// Lista de seções disponiveis $this->db->query('SELECT id, nome, modelos ' .' FROM '.PRE_TABLE.'noticia_secoes ' .' WHERE INSTR(users, "'.$this->aUser['id'].'")', __FILE__, __LINE__); // Monta JS Array e patTemplate Var $aSecoes = array(); --- 477,499 ---- $this->tmpl->addVars('formulario', $aValues); ! /// Lista as seções disponiveis $this->db->query('SELECT id, nome, modelos ' .' FROM '.PRE_TABLE.'noticia_secoes ' .' WHERE INSTR(users, "'.$this->aUser['id'].'")', __FILE__, __LINE__); + // Verifica se existe alguma seção criada [x] + if (!(bool)$this->db->numRows()) + { + $error_1 = "".ucfirst($this->aUser['nome'])."," + ."<p>É necessário que o seu administrador crie pelo menos uma seção para que seja possível cadastrar uma notícia.</p>"; + $error_2 = "É necessário que seja criada pelo menos uma seção para abilitar o cadastro de notícias."; + + $url_1 = "?m=entrada"; + $url_2 = "?m=noticia&action=shownovasecao"; + + SemiFatalError("${'error_' . $this->aUser['privs']}", "${'url_' . $this->aUser['privs']}"); + } + + // Monta JS Array e patTemplate Var $aSecoes = array(); *************** *** 468,488 **** /** --- **/ - - /** Monta JS Array de todos os Modelos */ - $this->db->query('SELECT id, nome, html FROM '.PRE_TABLE.'noticia_modelos '); - $modelos = "[\n"; - // Monta a array do JavaScript - while ($row = $this->db->fetchAssoc()) - { - if (isset($aValues['modelo'])) - $selected = $aValues['modelo'] ? 'true' : 'false'; - else - $selected = ''; - $modelos .= "\t[ ".$row['id'].", '".$row['nome']."', ".$selected." ],\n"; - } - $modelos = rtrim($modelos, ",\n")."\n]"; - $this->tmpl->addVar('formulario', 'MODELOSARRAY', $modelos); - /** --- **/ - /** Adiciona lista de CSS's disponiveis */ $this->db->query('SELECT nome FROM '.PRE_TABLE.'noticia_csss ORDER BY nome'); --- 515,518 ---- *************** *** 499,503 **** /** --- **/ - // Adiciona as imagens que podem ser usadas na Capa $imgid = isset($aValues['capaimg']) ? $aValues['capaimg'] : null; --- 529,532 ---- |
From: Edmilson F. <psy...@gm...> - 2004-07-09 21:42:53
|
N=E3o tenho muito conhecimento em XML/XLS mais sei o quanto =E9 port=E1vel = o xml, e andei um dia desses pensando que o m=F3dulo not=EDcia poderia gerar rss feeds, o que eu acho particularmente fant=E1stico... poder ler minhas not=EDcias de diferentes sites apartir de um =FAnico programa, sem me preocupar em abrir os meus diferentes sites de no=EDcias de diferentes assuntos do meu gigantesco bookmark(inclusive acho que vou procurar a google para eles desenvolverem uma busca exclusiva para bookmarks =3DoP). Em fim... tamb=E9m vou dar uma olhada em xml/xls para fluir as ideias, e outra coisa... PHP5, ja est=E1 + do que na hora de come=E7armos a portar o muspa."PHP 5 Release Candidate 3", Eu ja li v=E1rios tutorias sobre o php5 e gostei muito!!, ja peguei emprestado book de java para ler sobre a orienta=E7=E3o da linguagem concorrente e aprender + sobre o poo. Se pudermos nos livrar do pattemplate e vir com um muspa 2.0 XML/XLS / PHP5 / rss feed incluso em not=EDcias + um m=F3dulo no qual eu estava pensando em fazer... um chat, para conversas entre os users cadastrados e + o adminstrador do mesmo, seria um recurso bastante interessante... podemos conversar + sobre ele inclusive... vamos ter um CMS MEGA ULTRA SUPER POWER ADMIN ao[CUBO]!!!!!. Outro detalhe... que vou bater na tecla... acho que seria interessante de alguma forma incorporar o uso da PEAR:DB details: DB layers itself on top of PHP's existing database extensions. The currently supported extensions are: dbase, fbsql, interbase, informix, msql, mssql, mysql, mysqli, oci8, odbc, "pgsql"(nda + nda -), "sqlite"(tudo menos exceto a velocidade ;=ACD) and sybase. DB is compatible with both PHP 4 and PHP 5. O cliente poderia interagir com o MUSPA com maior objetividade escolhendo o banco de dados que aplica ao produto no qual ele est=E1 por interm=E9dio do muspa gerenciando... "Eu tenho um site simples e quero velocidade a nivel de BD quero usar o SQLLITE" pow perfeito... oq poderiamos fazer... deixar a nossa classe default para o mysql e com tdo ja configurado... e se TRUE no config.php de alguma forma abilitar o pear e dar suporte aos n' banco de dados suportados at=E9 o momento por eles... =3DD cool... Uma coisa interessante... fazer umas camisas MUSPA / PHP5 coisa assim... eu toparia =3DD e andaria pra cima e para baixo com a mesma hehehehehe psychopath_mind []'s |
From: Hugo P. L. <hu...@bo...> - 2004-07-07 07:16:01
|
Psy, come=E7a a dar uma estudada em XML/XSL, pq eu acho que vou passar o MUSPA para esse formato, pq tem algumas vantagens: - Poderemos esquecer o patTemplate - O conte=FAdo vai ficar realmente 100% separado do design, assim a gent evai poder at=E9 fazer temas para o MUSPA =3DP - Como o conte=FAdo via ficar 100% separado do design, ser=E1 bem mais r=E1pido fazer a parte HTML de novos m=F3dulos, pq n=E3o teremos que nos preocupar com o HTML.... apenas fazemos o XML e o XLT que precisamos fazer apenas uma vez ir=E1 tomar conta do resto. - XSL s=F3 =E9 bem suportado em navegadores novos ou quase novos, como o IE6, Firefox, Konqueror(?), mas mesmo assim podemos usar ele, pq podemos detectar se o navegador =E9 antigo, e se for, fazemos a transforma=E7=E3o= do XSL no servidor.... To come=E7ando a aprender agora XSL.... =E9 muito =FAtil.... para voc=EA = ter uma no=E7=E3o razoavel da uma olhada nessa p=E1gina: http://www.xmlfiles.com/xsl/ =C9 isso ai.... se depender de min o patTemplate esta com os dias contados.... e ainda fica "chique" deixar a p=E1gina em XML =3DP --=20 Hugo P.L. "Precisamos de mais g=EAnios humildes no mundo, hoje somos poucos!" |
From: Hugo P. L. <hu...@us...> - 2004-07-05 04:49:45
|
Update of /cvsroot/muspa/muspa/modules/noticia/templates In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28941 Modified Files: editsecao.htm novasecao.htm Log Message: XHTML fixes Index: editsecao.htm =================================================================== RCS file: /cvsroot/muspa/muspa/modules/noticia/templates/editsecao.htm,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** editsecao.htm 13 Mar 2004 03:20:12 -0000 1.3 --- editsecao.htm 5 Jul 2004 04:42:11 -0000 1.4 *************** *** 1,10 **** <patTemplate:tmpl name="content"> ! <p> <patTemplate:tmpl name="error"> <div class="error">{ERROR}</div> </patTemplate:tmpl> ! <form method="POST" action="?m=noticia&action=showeditsecao&subaction=add"> <patTemplate:link src="formsecao" /> --- 1,10 ---- <patTemplate:tmpl name="content"> ! <p>Preencha os campos abaixo para editar a seção.</p> <patTemplate:tmpl name="error"> <div class="error">{ERROR}</div> </patTemplate:tmpl> ! <form method="post" action="?m=noticia&action=showeditsecao&subaction=add"> <patTemplate:link src="formsecao" /> *************** *** 23,26 **** </form> - </p> </patTemplate:tmpl> --- 23,25 ---- Index: novasecao.htm =================================================================== RCS file: /cvsroot/muspa/muspa/modules/noticia/templates/novasecao.htm,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** novasecao.htm 13 Mar 2004 03:20:12 -0000 1.2 --- novasecao.htm 5 Jul 2004 04:42:11 -0000 1.3 *************** *** 1,10 **** <patTemplate:tmpl name="content"> ! <p> <patTemplate:tmpl name="error"> <div class="error">{ERROR}</div> </patTemplate:tmpl> ! <form method="POST" action="?m=noticia&action=shownovasecao&subaction=new"> <patTemplate:link src="formsecao" /> --- 1,10 ---- <patTemplate:tmpl name="content"> ! <p>Preencha os campos abaixo para criar uma nova seção.</p> <patTemplate:tmpl name="error"> <div class="error">{ERROR}</div> </patTemplate:tmpl> ! <form method="post" action="?m=noticia&action=shownovasecao&subaction=new"> <patTemplate:link src="formsecao" /> *************** *** 13,16 **** </form> - </p> </patTemplate:tmpl> --- 13,15 ---- |
From: Hugo P. L. <hu...@us...> - 2004-07-05 04:33:24
|
Update of /cvsroot/muspa/muspa/modules/opcoes/templates In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27477 Modified Files: alterarsenha.htm userlist.htm Log Message: XHTML fixes Index: userlist.htm =================================================================== RCS file: /cvsroot/muspa/muspa/modules/opcoes/templates/userlist.htm,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** userlist.htm 24 Feb 2004 03:41:57 -0000 1.2 --- userlist.htm 5 Jul 2004 04:28:49 -0000 1.3 *************** *** 58,62 **** <td width="14" class="b2_left"> </td> <td class="b2_content"><input type="checkbox" class="checkbox" name="usuario[]" value="{ID}" /></td> ! <td class="b2_content"><a href="?m=opcoes&action=showedituser&id={ID}">{NOME}</a></td> <td class="b2_content" nowrap="nowrap">{USER}</td> <td class="b2_content" nowrap="nowrap">{PRIVS}</td> --- 58,62 ---- <td width="14" class="b2_left"> </td> <td class="b2_content"><input type="checkbox" class="checkbox" name="usuario[]" value="{ID}" /></td> ! <td class="b2_content"><a href="?m=opcoes&action=showedituser&id={ID}">{NOME}</a></td> <td class="b2_content" nowrap="nowrap">{USER}</td> <td class="b2_content" nowrap="nowrap">{PRIVS}</td> *************** *** 103,107 **** </patTemplate:tmpl> ! <form method="post" action="?m=opcoes&action=createuser"> <patTemplate:link src="userform" /> <div align="center"><input type="submit" value="Criar usuário" class="button" /></div> --- 103,107 ---- </patTemplate:tmpl> ! <form method="post" action="?m=opcoes&action=createuser"> <patTemplate:link src="userform" /> <div align="center"><input type="submit" value="Criar usuário" class="button" /></div> Index: alterarsenha.htm =================================================================== RCS file: /cvsroot/muspa/muspa/modules/opcoes/templates/alterarsenha.htm,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** alterarsenha.htm 19 Feb 2004 03:15:44 -0000 1.1.1.1 --- alterarsenha.htm 5 Jul 2004 04:28:49 -0000 1.2 *************** *** 6,10 **** </patTemplate:tmpl> ! <form method="post" action="?m=opcoes&action=alterarsenha"> <table class="formtable"> <tr> --- 6,10 ---- </patTemplate:tmpl> ! <form method="post" action="?m=opcoes&action=alterarsenha"> <table class="formtable"> <tr> |
From: Hugo P. L. <hu...@us...> - 2004-07-05 04:00:18
|
Update of /cvsroot/muspa/muspa/modules/opcoes/templates In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23876 Modified Files: modules.htm Log Message: fix em layout para o IE (CSS dos radio buttons) Index: modules.htm =================================================================== RCS file: /cvsroot/muspa/muspa/modules/opcoes/templates/modules.htm,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** modules.htm 30 Jun 2004 05:22:14 -0000 1.3 --- modules.htm 5 Jul 2004 03:57:17 -0000 1.4 *************** *** 26,31 **** <td class="b2_content">{VERSAO}</td> <td class="b2_content"> ! <input type="radio" name="modules[{CLASSNAME}][0]" value="1" {SIM} {DISABLED} /> Sim ! <input type="radio" name="modules[{CLASSNAME}][0]" value="0" {NAO} {DISABLED} /> Não </td> <td class="b2_content" align="center"> --- 26,31 ---- <td class="b2_content">{VERSAO}</td> <td class="b2_content"> ! <input type="radio" class="radio" name="modules[{CLASSNAME}][0]" value="1" {SIM} {DISABLED} /> Sim ! <input type="radio" class="radio" name="modules[{CLASSNAME}][0]" value="0" {NAO} {DISABLED} /> Não </td> <td class="b2_content" align="center"> |
From: Hugo P. L. <hu...@us...> - 2004-07-04 04:48:33
|
Update of /cvsroot/muspa/muspa/sys In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16403 Modified Files: admin.php entrada.php Added Files: conf.php Log Message: Mudanças para nova estrutura de modulos --- NEW FILE: conf.php --- <?php /******************************************************************************* * MUSPA * * Copyright (C) 2004 MUSPA Project * * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo * sob os termos da Licença Pública Geral GNU conforme publicada pela Free * Software Foundation; tanto a versão 2 da Licença, como (a seu critério) * qualquer versão posterior. * * Este programa é distribuído na expectativa de que seja útil, porém, SEM * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral do * GNU para mais detalhes. * * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto com * este programa; se não, escreva para a Free Software Foundation, Inc., no * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. * * $Id: conf.php,v 1.1 2004/07/04 04:48:24 hugo_pl Exp $ *******************************************************************************/ class Conf { /** * Descrição do modulo * @return String com descrição do módulo */ function moduleDescription() { return '[ModuleDescription]'; } /** * Nome do modulo * @return Nome do módulo */ function moduleName() { return '[ModuleName]'; } /** * O autor do módulo precisa reimplementar este metodo com seu nome. * @return String com versão do módulo */ function author() { return ''; } /** * Os módulos precisam reimplementar este metódo com a versão do módulo. * @return String com versão do módulo */ function version() { return ''; } /** * Retorna os sub-modulos do modulo */ function subModules() { // keys: nome, descricao, link, privs return array(); } /** * Privilégio necessário para acessar este modulo */ function privs() { return PRIV_NORMAL; } }; ?> Index: admin.php =================================================================== RCS file: /cvsroot/muspa/muspa/sys/admin.php,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** admin.php 19 Jun 2004 21:34:01 -0000 1.9 --- admin.php 4 Jul 2004 04:48:24 -0000 1.10 *************** *** 19,22 **** --- 19,23 ---- * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. * + * $Id$ *******************************************************************************/ *************** *** 24,27 **** --- 25,29 ---- require_once('include/db.php'); require_once('include/patTemplate.php'); + require_once('sys/conf.php'); // Campos selecionados nas queries usadas para preencher *************** *** 49,55 **** var $magic_quotes; /// Magic quotes ligado no servidor? - // Todos os modulos do painel de controle - var $aModules; - // Atributos var $aUser; /// Array com dados do usuario... --- 51,54 ---- *************** *** 66,70 **** $this->validate = $validate; $this->inittemplate = $inittemplate; - $this->aModules = array(); } --- 65,68 ---- *************** *** 96,116 **** if ($this->inittemplate) { ! // Escaneia todos os modulos que o usuário tem privilégio ! // para ver. ! // Cria um objeto de todos os modulos... ! // parece loucura, mas ele apenas cria os objetos, ! // não os executa. ! // Pretendo melhorar isso aqui em um futuro prospero... para ele ! // não precisar "parsear" todos os arquivos dos modulos foreach ( $g_aModuleList as $module=>$url ) ! { ! include_once($url); ! ! $obj =& new $module; ! if ($obj->privs() <= $this->aUser['privs']) ! $this->aModules[] = $obj; ! else ! unset($obj); ! } // Abre os templates --- 94,100 ---- if ($this->inittemplate) { ! // Inclui o arquivo de configuração de todos os modulos foreach ( $g_aModuleList as $module=>$url ) ! require_once($url.$module.'_conf.php'); // Abre os templates *************** *** 139,142 **** --- 123,127 ---- function _buildMenu() { + global $g_aModuleList; $aMenu = array(); // Adiciona Entradas de menu do sistema *************** *** 147,159 **** $aMenu['SELECTED'][] = ''; ! foreach($this->aModules as $obj) { ! $aMenu['NOME'][] = $obj->moduleName(); ! $aMenu['DESCRICAO'][] = $obj->moduleDescription(); $aMenu['LINK'][] = ''; $aMenu['TYPE'][] = 'menu'; ! $aMenu['SELECTED'][] = (get_class($obj) == $_GET['m']) ? 'true' : 'false'; ! $aSubMenu = $obj->subModules(); foreach($aSubMenu as $submenu) { --- 132,144 ---- $aMenu['SELECTED'][] = ''; ! foreach($g_aModuleList as $module=>$url) { ! $aMenu['NOME'][] = call_user_func(array($module.'_conf', 'moduleName')); ! $aMenu['DESCRICAO'][] = call_user_func(array($module.'_conf', 'moduleDescription')); $aMenu['LINK'][] = ''; $aMenu['TYPE'][] = 'menu'; ! $aMenu['SELECTED'][] = ($module == $_GET['m']) ? 'true' : 'false'; ! $aSubMenu = call_user_func(array($module.'_conf', 'subModules')); foreach($aSubMenu as $submenu) { *************** *** 190,246 **** /** - * Descrição do modulo - * @return String com descrição do módulo - */ - function moduleDescription() - { - return '[ModuleDescription]'; - } - - /** - * Nome do modulo - * @return Nome do módulo - */ - function moduleName() - { - return '[ModuleName]'; - } - - /** - * O autor do módulo precisa reimplementar este metodo com seu nome. - * @return String com versão do módulo - */ - function author() - { - return ''; - } - - /** - * Os módulos precisam reimplementar este metódo com a versão do módulo. - * @return String com versão do módulo - */ - function version() - { - return ''; - } - - /** - * Retorna lista de modulos disponiveis - */ - function modules() - { - return $this->aModules; - } - - /** - * Retorna os sub-modulos do modulo - */ - function subModules() - { - // keys: nome, descricao, link, privs - return array(); - } - - /** * Retorna por referência a conexão ao DB usada pelo objeto, se * a conexão ainda não tiver sido aberta, uma nova --- 175,178 ---- *************** *** 276,287 **** /** - * Privilégio necessário para acessar este modulo - */ - function privs() - { - return PRIV_NORMAL; - } - - /** * Valida o usuario */ --- 208,211 ---- Index: entrada.php =================================================================== RCS file: /cvsroot/muspa/muspa/sys/entrada.php,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** entrada.php 19 Feb 2004 03:15:26 -0000 1.1.1.1 --- entrada.php 4 Jul 2004 04:48:24 -0000 1.2 *************** *** 33,55 **** $this->setCaption("Bem vindo"); ! // Array de modulos ! $aModules = $this->modules(); ! ! // Criar o objeto de todos os modulos... ! // parece loucura, mas ele apenas cria os objetos, ! // não os executa, apesar disso pretendo alterar ! // isto num futuro breve e feliz... apenas chamando ! // os metodos staticamente, talvez ao invés de escrever ! // este comentário idiota eu poderia já estar fazendo isso ! // que não levaria mais de 5 minutos... mas... é.... ! // bem... fica p/próx. foreach ( $g_aModuleList as $module=>$url ) { ! $obj = new $module; ! if ($obj->privs() <= $this->aUser['privs']) { ! $aModules['NAME'][] = $obj->moduleName(); ! $aModules['LINK'][] = "?m=$module"; ! $aModules['DESCRIPTION'][] = $obj->moduleDescription(); } } --- 33,44 ---- $this->setCaption("Bem vindo"); ! // Monta lista de módulos ao qual o usuário tem acesso. foreach ( $g_aModuleList as $module=>$url ) { ! if (call_user_func(array($module.'_conf', 'privs')) <= $this->aUser['privs']) { ! $aModules['NAME'][] = call_user_func(array($module.'_conf', 'moduleName')); ! $aModules['LINK'][] = '?m='.$module; ! $aModules['DESCRIPTION'][] = call_user_func(array($module.'_conf', 'moduleDescription')); } } |
From: Hugo P. L. <hu...@us...> - 2004-07-04 04:47:45
|
Update of /cvsroot/muspa/muspa/modules/opcoes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16289 Modified Files: opcoes.php Added Files: opcoes_conf.php Log Message: Mudanças para nova estrutura de modulos --- NEW FILE: opcoes_conf.php --- <?php /******************************************************************************* * MUSPA * * Copyright (C) 2004 MUSPA Project * * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo * sob os termos da Licença Pública Geral GNU conforme publicada pela Free * Software Foundation; tanto a versão 2 da Licença, como (a seu critério) * qualquer versão posterior. * * Este programa é distribuído na expectativa de que seja útil, porém, SEM * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral do * GNU para mais detalhes. * * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto com * este programa; se não, escreva para a Free Software Foundation, Inc., no * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. * * $Id: opcoes_conf.php,v 1.1 2004/07/04 04:47:36 hugo_pl Exp $ *******************************************************************************/ class Opcoes_conf extends Conf { /** Nome do modulo */ function moduleName() { return 'Opções'; } /** Descrição do modulo */ function moduleDescription() { return 'Opções gerais, dentre elas alterar senha.'; } /** * Meu lindo nome. */ function author() { return "Hugo P.L."; } /** * Versão do módulo */ function version() { return "1.0"; } /** Lista de submodulos */ function subModules() { return array( array( "nome" => "Alterar senha", "descricao" => "Altera sua senha", "link" => "?m=opcoes&action=alterarsenha", "privs" => PRIV_NORMAL ), array( "nome" => "Usuários", "descricao" => "Cria um usuário", "link" => "?m=opcoes&action=listusers", "privs" => PRIV_ADMIN ), array( "nome" => "Módulos", "descricao" => "Habilita/desabilita módulos do sistema.", "link" => "?m=opcoes&action=modules", "privs" => PRIV_ADMIN ), ); } }; Index: opcoes.php =================================================================== RCS file: /cvsroot/muspa/muspa/modules/opcoes/opcoes.php,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** opcoes.php 19 Feb 2004 03:15:44 -0000 1.1.1.1 --- opcoes.php 4 Jul 2004 04:47:36 -0000 1.2 *************** *** 25,80 **** class Opcoes extends admin { - /** Nome do modulo */ - function moduleName() - { - return 'Opções'; - } - /** Descrição do modulo */ - function moduleDescription() - { - return 'Opções gerais, dentre elas alterar senha.'; - } - - /** - * Meu lindo nome. - */ - function author() - { - return "Hugo P.L."; - } - - /** - * Versão do módulo - */ - function version() - { - return "1.0"; - } - - /** Lista de submodulos */ - function subModules() - { - return array( - array( - "nome" => "Alterar senha", - "descricao" => "Altera sua senha", - "link" => "?m=opcoes&action=alterarsenha", - "privs" => PRIV_NORMAL - ), - array( - "nome" => "Usuários", - "descricao" => "Cria um usuário", - "link" => "?m=opcoes&action=listusers", - "privs" => PRIV_ADMIN - ), - array( - "nome" => "Módulos", - "descricao" => "Habilita/desabilita módulos do sistema.", - "link" => "?m=opcoes&action=modules", - "privs" => PRIV_ADMIN - ), - ); - } - function run() { --- 25,28 ---- *************** *** 431,451 **** // Lista todos os modulos disponiveis $dir = opendir('modules'); ! while(($file = readdir($dir)) !== false) { ! if ($file == "." || $file == "..") continue; ! if (!file_exists('modules/'.$file.'/'.$file.'.php')) continue; ! include_once('modules/'.$file.'/'.$file.'.php'); ! if (!class_exists($file)) continue; ! if (get_parent_class($file) != 'admin') continue; ! $aModules['MODULO'][] = call_user_func(array($file, "moduleName")); ! $aModules['DESCRICAO'][] = call_user_func(array($file, "moduleDescription")); ! $aModules['AUTOR'][] = call_user_func(array($file, "author")); ! $aModules['VERSAO'][] = call_user_func(array($file, "version")); ! $aModules['CLASSNAME'][] = $file; ! if (isset($g_aModuleList[$file])) { $aModules['SIM'][] = 'checked="checked"'; --- 379,400 ---- // Lista todos os modulos disponiveis $dir = opendir('modules'); ! while(($moduledir = readdir($dir)) !== false) { ! $class = $moduledir.'_conf'; ! if ($moduledir == "." || $moduledir == "..") continue; ! if (!file_exists('modules/'.$moduledir.'/'.$class.'.php')) continue; ! include_once('modules/'.$moduledir.'/'.$class.'.php'); ! if (!class_exists($class)) continue; ! if (get_parent_class($class) != 'conf') continue; ! $aModules['MODULO'][] = call_user_func(array($class, "moduleName")); ! $aModules['DESCRICAO'][] = call_user_func(array($class, "moduleDescription")); ! $aModules['AUTOR'][] = call_user_func(array($class, "author")); ! $aModules['VERSAO'][] = call_user_func(array($class, "version")); ! $aModules['CLASSNAME'][] = $moduledir; ! if (isset($g_aModuleList[$moduledir])) { $aModules['SIM'][] = 'checked="checked"'; *************** *** 457,465 **** $aModules['NAO'][] = 'checked="checked"'; } ! if ($file == 'opcoes') $aModules['DISABLED'][] = 'disabled="disabled"'; else $aModules['DISABLED'][] = ''; ! $ordem = array_search($file, $aCurOrdem); $aModules['ORDEM'][] = ($ordem !== false) ? $ordem+1 : ''; } --- 406,414 ---- $aModules['NAO'][] = 'checked="checked"'; } ! if ($moduledir == 'opcoes') $aModules['DISABLED'][] = 'disabled="disabled"'; else $aModules['DISABLED'][] = ''; ! $ordem = array_search($moduledir, $aCurOrdem); $aModules['ORDEM'][] = ($ordem !== false) ? $ordem+1 : ''; } *************** *** 487,491 **** $conf[1] = 99; $aTempModules['NOME'][$conf[1]] = $module; ! $aTempModules['PATH'][$conf[1]] = 'modules/'.$module.'/'.$module.'.php'; } --- 436,440 ---- $conf[1] = 99; $aTempModules['NOME'][$conf[1]] = $module; ! $aTempModules['PATH'][$conf[1]] = 'modules/'.$module.'/'; } |
From: Hugo P. L. <hu...@us...> - 2004-07-04 04:47:22
|
Update of /cvsroot/muspa/muspa/modules/noticia In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16152 Modified Files: noticia.php Added Files: noticia_conf.php Log Message: Mudanças para nova estrutura de modulos --- NEW FILE: noticia_conf.php --- <?php /******************************************************************************* * MUSPA * * Copyright (C) 2004 MUSPA Project * * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo * sob os termos da Licença Pública Geral GNU conforme publicada pela Free * Software Foundation; tanto a versão 2 da Licença, como (a seu critério) * qualquer versão posterior. * * Este programa é distribuído na expectativa de que seja útil, porém, SEM * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral do * GNU para mais detalhes. * * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto com * este programa; se não, escreva para a Free Software Foundation, Inc., no * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. * *******************************************************************************/ class Noticia_conf extends Conf { /** * Nome do módulo */ function moduleName() { return 'Notícias'; } /** * Descrição do modulo */ function moduleDescription() { return 'Gerênciador de notícias.'; } /** * Meu lindo nome. */ function author() { return 'Hugo P.L.'; } /** * Versão do módulo */ function version() { return '1.1'; } /** * Lista de submodulos */ function subModules() { return array( array( 'nome' => 'Listar', 'descricao' => 'Lista as notícias', 'link' => '?m=noticia&action=listar', 'privs' => PRIV_NORMAL ), array( 'nome' => 'Cadastrar', 'descricao' => 'Cadastra uma notícia', 'link' => '?m=noticia&action=showcadastro', 'privs' => PRIV_NORMAL ), array( 'nome' => 'Seções/Modelos', 'descricao' => 'Configura as seções de notícia', 'link' => '?m=noticia&action=secoesmodelos', 'privs' => PRIV_ADMIN ), array( 'nome' => 'CSS\\\'s', 'descricao' => 'Configura CSS\\\\\'s disponíveis para as notícias', 'link' => '?m=noticia&action=css', 'privs' => PRIV_ADMIN ) ); } }; ?> Index: noticia.php =================================================================== RCS file: /cvsroot/muspa/muspa/modules/noticia/noticia.php,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** noticia.php 3 Jul 2004 07:11:32 -0000 1.11 --- noticia.php 4 Jul 2004 04:47:12 -0000 1.12 *************** *** 49,117 **** /** - * Nome do módulo - */ - function moduleName() - { - return 'Notícias'; - } - - /** - * Descrição do modulo - */ - function moduleDescription() - { - return 'Gerênciador de notícias.'; - } - - /** - * Meu lindo nome. - */ - function author() - { - return 'Hugo P.L.'; - } - - /** - * Versão do módulo - */ - function version() - { - return '1.1'; - } - - /** - * Lista de submodulos - */ - function subModules() - { - return array( - array( - 'nome' => 'Listar', - 'descricao' => 'Lista as notícias', - 'link' => '?m=noticia&action=listar', - 'privs' => PRIV_NORMAL - ), - array( - 'nome' => 'Cadastrar', - 'descricao' => 'Cadastra uma notícia', - 'link' => '?m=noticia&action=showcadastro', - 'privs' => PRIV_NORMAL - ), - array( - 'nome' => 'Seções/Modelos', - 'descricao' => 'Configura as seções de notícia', - 'link' => '?m=noticia&action=secoesmodelos', - 'privs' => PRIV_ADMIN - ), - array( - 'nome' => 'CSS\\\'s', - 'descricao' => 'Configura CSS\\\\\'s disponíveis para as notícias', - 'link' => '?m=noticia&action=css', - 'privs' => PRIV_ADMIN - ) - ); - } - - /** * Retorna a array com as regras para o formulário */ --- 49,52 ---- |