Userprofil als POPUP

Begonnen von NeMeSiSX2LC, 04 April 2006, 23:53:27

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

NeMeSiSX2LC

Das sollte vorerst einmal in die includes/javascript.php eingefügt werden(vor ?>),:

    echo "<script type=\"text/javascript\">\n";
    echo "<!--\n";
    echo "var popUpWin=0;

function popUpWindow(URLStr, left, top, width, height)
{

if(popUpWin)
{
if(!popUpWin.closed) {popUpWin.close();}
}
popUpWin = open(URLStr, 'popUpWin', 'toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbar=no,resizable=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}
function openWin(id)
{

var width=550;
var height=378;
var left = (screen.width/2) - width/2;
var top = (screen.height/2) - height/2;

openpopup=window.open('viewresult.php?pollid=' + id ,'','width='+width+',height='+height+',left='+left+',top='+top+',resizable=yes,scrollbars=yes,status=no');
openpopup.opener.name='abc';
}
function popUpScrollWindow2 (URLStr, align, width, heightParam)
{

height = screen.height - 150;
height = Math.min( height, heightParam );

/* if(popUpWin){

if(!popUpWin.closed) { popUpWin.close(); }
}
*/
if( align == 'center' ){

var left = (screen.width/2) - width/2;
var top = (screen.height/2) - height/2;
}else if( align == 'top' ){

var left = (screen.width/2) - width/2;
var top = 0;
}else{

var left = 0;
var top = 0;
}

popUpWin = open(URLStr, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
popUpWin.opener.name=\"abc1\";
}

var prevRow = null;";
    echo "//-->\n";
    echo "</SCRIPT>\n\n";


Das Profil wird dann wie folgt aufgerufen:

<a href=\"modules.php?name=Userinfo&uname=".$theuser['uname']."\" onclick=\"popUpScrollWindow2(this.href, 'center',650,600); return false\"></a>

Dabei steht "center" für die Ausrichtung, "650" für die Breite und 600 für die höhe. Natürlich sollte das $theuser['uname'] je nach modul und Variable geändert werden. Der Beispiel link bezieht sich auf  die Memberlist

Als nächsts ist die modules/Userinfo/view.php dran.

Sucht nach
include("header.php");

und ersetzt es mit

    if ($istheuser && $_REQUEST['name'] == "Your_Account") {
include("header.php");
        /*include_once("modules/Your_Account/navbar.php");
        OpenTable();
        nav(1);
        CloseTable();
        echo "<br>";*/
    } else {
yaheader($uinfo);
yabody();
    }


Sucht nach

include("footer.php");

und ersetzen mit

if ($istheuser && $_REQUEST['name'] == "Your_Account") {
    include("footer.php");
}else{
yafooter();
}


So nun zu den drei Funktionen yaheader, yabody und yafooter. Diese sollten am besten in die includes/mx_baseconfig.php. Vorteilhafter, für später Updates, wäre aber die Funktionen in einen neue File zupacken und diese in der mainfile.php zu includen.

So hier die Funktionen.

###############################################
function yaheader($uinfo=""){
global $ThemeSel;

$ThemeSel = mxGetTheme();
require_once("themes/$ThemeSel/theme.php");
include("includes/javascript.php");
echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
echo "<html>\n<head>\n";
echo "<meta http-equiv=\"Page-Enter\" content=\"revealTrans(Duration=0.1,Transition=23)\">\n";
echo "<meta http-equiv=\"expires\" content=\"0\">\n";
echo "<meta http-equiv=\"pragma\" content=\"no-cache\">\n";
echo "<title>".$GLOBALS['sitename']." :: ".$uinfo['uname']."'s Profil</title>\n";
echo "<LINK REL=\"StyleSheet\" HREF=\"themes/$ThemeSel/style/style.css\" TYPE=\"text/css\">\n";
if (@file_exists("themes/$ThemeSel/style/style.php")) {
echo "<LINK REL=\"StyleSheet\" HREF=\"themes/$ThemeSel/style/style.php\" TYPE=\"text/css\">\n";
}
}

###############################################
function yabody(){ # schliesst <head> und oeffnet <body>
global $bgcolor1, $textcolor1;
echo "\n</head>\n<body text='$textcolor1' link='$textcolor1' style='background-color: $bgcolor1; color: $textcolor1; margin: 0;'>\n";
}

###############################################
function yafooter() {
echo "</body>\n</html>";
}


So hoffe ich hab nichts vergessen.
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

Catlak

Hi Nemesis ... ich hab es genauso versucht wie du so beschrieben hast.....

wenn ich bei einem user ins profil reinschauen will bekomme ich diesen fehler stat den popup ...

Fatal error: Call to undefined function: themefooter() in /homepages/20/d155753038/htdocs/footer.php on line 32

NeMeSiSX2LC

schreib mal statt dem

   if ($istheuser && $_REQUEST['name'] == "Your_Account") {
    include("footer.php");
   }else{
   yafooter();
   }

nur

yafooter();
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

CanKan

wer kann mir helfen..
ich möchte dass auch machen kann das jemand für mich tun ? :-\ :-\ :-\





ela :'(



Der Hund bellt, die Karawane zieht weiter.

Energy-drink

Zitat von: CanKan am 05 April 2006, 11:59:42
wer kann mir helfen..
ich möchte dass auch machen kann das jemand für mich tun ? :-\ :-\ :-\

was hälst du mal von selber ausprobieren?? der Code wird dir ja schon komplett hier in dem beitrag vorgegeben...mehr kann man wohl nicht mehr erwarten...ein wenig selbstarbeit an deiner seite muss wohl drin sein...
Ich bin alt aber bezahlt.... ;-)
Ich würde ja gerne die Welt verändern,
aber Gott gibt mir den Quellcode nicht!

Jay-E

Also ich hab das mal gemacht, es kommt auch keine Fehlermeldung, aber das Userprofil wird mir nicht im popup angezeigt sondern in dem gleichem fenster öffnet es sich wo liegt das problem ???

Jay-E

Also muss noch dazu sagen, dass ich die Funktion von dir in die mx_baseconfig einfach ganz unten in den code angehängt habe, hat es was damit zu tun ???

NeMeSiSX2LC

Eigentlich nicht. Die mx_baseconfig.php wird ja in der mainfile included sprich die funktionen sind überall da. Aber wie geht es auf? Mit Header usw oder nut das Profil ohne was drum herum?
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

Jay-E

nur profil ohne was drum!!!!

Catlak

Zitat von: NeMeSiSX2LC am 05 April 2006, 11:25:12
schreib mal statt dem

   if ($istheuser && $_REQUEST['name'] == "Your_Account") {
    include("footer.php");
   }else{
   yafooter();
   }

nur

yafooter();


habe es in der view.php genauso geändert wie du oben angegeben hast

jetzt bekomme ich diesen fehler wenn ich die profile anschauen will ..

Parse error: parse error, unexpected '}' in /homepages/20/d155753038/htdocs/modules/Userinfo/view.php on line 259

NeMeSiSX2LC

häng mal deine view.php hier an. Sonst probieren wir da wieder ewig
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

Catlak

Gerne Doch Bitteschön



[gelöscht durch Administrator]

NeMeSiSX2LC

so teste mal die File im Anhang. Da hat bissel viel gefehlt ;)

[gelöscht durch Administrator]
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

Catlak

Hi Nemesis Ich habe die Datei ersetzt ... bekomme jetzt diese Fehlermeldung ...

Fatal error: Call to undefined function: opentable() in /homepages/20/d155753038/htdocs/modules/Userinfo/view.php on line 131

NeMeSiSX2LC

Benutzt du ein Theme mit der neuen Enigne odrr noch ein Nuke theme? kann den Fehler jetzt irgendwie nicht nachvollziehen.. bei mir gehts so
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

Musicman75

Unaufgeforderte Support PMs & Emails werden ignoriert

Immer erst die Boardsuche verwenden und gegebenenfalls einen neuen Threat eröffnen, wenn das Problem noch nicht behandelt wurde!

Musicman75

ich hab das ganze jetzt ach mal eingebaut.
Funktioniert alles bestens, allerdings hab ich jetzt nen kleiner problem.

Wenn ich im Who is Online Block auf Userinfo klicke, wird kein Popup geöffnet. Da der Link zur Userinfo dort als Formular übergeben wird, hab ich da nen Problem mit, das als Popup einzubauen.

Hier mal der Code des Formulars aus dem Block:
$content .= "<form action=\"modules.php?test\" name=\"onlineuserinfo\" method=\"get\" style=\"border: 0px; margin-bottom: 5px; margin-top: 0px;\">";
$content .= "<input type=\"hidden\" name=\"name\" value=\"Your_Account\">";
$content .= "<input type=\"hidden\" name=\"op\" value=\"userinfo\">";
$content .= "<select name=\"uname\" size=\"$onlinelistsize\" style=\" background-color: $bgcolor1; font-size: 9px; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; color: $textcolor1; width: 90%; cursor: hand; border: 1px solid $bgcolor2; text-decoration: none; padding-left: 1px; padding-top: 1px; padding-bottom: 1px;\" $script>".$whoonlineselect."</select>";
$content .= "<br>\n<input type=\"image\" src=\"$imagedir/info.png\" alt=\""._BWOUSERINFO."\">";
$content .= "</form>\n";



Unaufgeforderte Support PMs & Emails werden ignoriert

Immer erst die Boardsuche verwenden und gegebenenfalls einen neuen Threat eröffnen, wenn das Problem noch nicht behandelt wurde!

NeMeSiSX2LC

Zeile 170 bis 182 mal mit dem hier ersetzen:

        if (!MX_IS_USER || !$pmactiv) {
            $script = " onclick=\"popUpScrollWindow2('modules.php?name=Userinfo&uname=".$uname2."', 'center',650,600); return false\"";
        } else {
            $script = " onDblClick=\"whob_clickit()\" onclick=\"popUpScrollWindow2('modules.php?name=Userinfo&uname=".$uname2."', 'center',650,600); return false\"";
            $content .= "<script language=\"JavaScript\" type=\"text/javascript\">\n<!--\n";
            $content .= "function whob_clickit(){\n";
            $content .= " var y=document.onlineuserinfo.uname.selectedIndex; \n";
            $content .= " var x=document.onlineuserinfo.uname.options[y].value; \n";
            $content .= " window.open('modules.php?name=$pm_module_name&file=buddy&op=compose&to='+x, '" . md5(time()) . "','left=370,top=150,width=360,height=200,toolbar=no,location=no,menubar=no,scrollbars=yes,resizeable=yes,status=no');\n";
            $content .= " return false;\n";
            $content .= " }\n//-->\n";
            $content .= "</script>\n";
        }


CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

Musicman75

naja, besten dank erstmal, das popup geht auf, allerdings bekomm ich nur mein profil zu sehen.
:-[
Unaufgeforderte Support PMs & Emails werden ignoriert

Immer erst die Boardsuche verwenden und gegebenenfalls einen neuen Threat eröffnen, wenn das Problem noch nicht behandelt wurde!

NeMeSiSX2LC

Dann muss da wirklich eine andere Funktion her... denke mal muss so aussehen wie die fürs PN Modul
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1