Bewertungssterne auf der Detailseite ausgeben

Begonnen von dobra, August 11, 2020, 11:32:03

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

dobra

Aufgabe:
wenn es für einen Artikel Bewertungen gibt, sollen die Sterne angezeigt werden.

Lösung:
in reviewuser.ipl diese sub dazu schreiben
sub nur_bw{
main::mprint qq| <link rel="stylesheet" href="$ssp::catalog_abs/review_modul/IBOreview.css">|;
my $command = $ssp::pgid ;
my %pagetype = ssp::getCurrentPageInfo();
my $testpagetype = $pagetype{'pagetype'};

my $id="";
my $page="";
       
if ($testpagetype != 2) { # Befindet sich auf Detailseite
  $id = ssp::get_var_article("itemid"); #Artikelnummer holen -> gerade angewählte Detailseite
  $page = ssp::get_var_article("ipagenr");
  $page = "d".$page . "!0";
}
my $hidden = "";
if ($post == 1){ #wenn Post aus cfg Datei auf 1/ja $hidden für die Datenbankanfrage vorbereiten...
$hidden = qq|AND HIDDEN='0'|;
}
# Alle Datensätze aus der Datenbank auslesen, welche die Itemid $id haben, mit ausnahme der Datensätze die HIDDEN='1' sind... abhängig von der Einstellung für Post in der cfg Date
    $id = main::qdb($id);
my $sql = qq |SELECT  USR, BW, DATE, BWNR, NOTE, NAME, LOCATION, HELPFUL, UNHELPFUL FROM $dbtable WHERE ITEMID='$id' $hidden ORDER BY BWNR DESC|;
my $read = ssp::readSQLData($sql, "usr", "bw", "date", "bwnr", "grade", "name", "location", "helpfulyes", "helpfulno" );

if ($rank == 1 && $read != 0 && $read != -1){
my @faverage = average($id); # Aufruf der funktion average welche die Durchscnittliche Bewertung für einen Artikel aus allen bisher abgegeben Bewertungen errechnet.
main::mprint qq|<div class="reviewasmall" style="">Bewertung: $faverage[0] __reviewuser::display_rank__</div>|;
}
}


sub reviewnurBewe {
nur_bw();
}


mit  __reviewuser::reviewnurBewe__  kann das dann auf der Detailseite an beliebiger Stelle ausgegeben werden.

mfG
dobra