Designauswahl in Sidebar Designauswahl in Sidebar
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

Designauswahl in Sidebar

Started by msc-o, April 06, 2010, 10:18:49 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

msc-o

Hallo,

bin ein absoluter Anfänger mit Coppermine 1.53
Ich baue die Gallerie gerade auf und möchte meine Kollegen (Motorsportverein) an der Auswahl des Design teilhaben lassen.
Wie kann ich in der Version für angemeldete Benutzer die Designauswahl Pulldown einblenden, damit die vorhandenen Designs angesehen werden können.
Wo gibt es noch Designs für 1.53, die man am Besten auch in einer Vorschau sehen kann.

Die Seite ist www.galerie.msc-oberflockenbach.de

Hilfe auch gern per Mail

Danke für die Hilfe

Thomas

Joachim Müller

Quote from: msc-o on April 06, 2010, 10:18:49 PM
bin ein absoluter Anfänger mit Coppermine 1.53
Version ist 1.5.3


Quote from: msc-o on April 06, 2010, 10:18:49 PMIch baue die Gallerie gerade auf und möchte meine Kollegen (Motorsportverein) an der Auswahl des Design teilhaben lassen.
Wie kann ich in der Version für angemeldete Benutzer die Designauswahl Pulldown einblenden, damit die vorhandenen Designs angesehen werden können.
vgl. http://galerie.msc-oberflockenbach.de/docs/en/theme_template.htm#theme_template_theme_select_list - einfach {THEME_SELECT_LIST} in alle themes einbauen. Alternative: schicke Deine Kollegen per Link (z.B. in einer eMail oder im anycontent.php-Bereich) zu den verfügbaren Themes, wie unter http://galerie.msc-oberflockenbach.de/docs/en/theme_create.htm#theme_create_tipps beschrieben

Quote from: msc-o on April 06, 2010, 10:18:49 PMWo gibt es noch Designs für 1.53, die man am Besten auch in einer Vorschau sehen kann.
Wie unter http://galerie.msc-oberflockenbach.de/docs/en/theme_user-contributions.htm#theme_user-contributions beschrieben gibt's die Themes in unserer Demo (link oben am Rand dieser Seite) zu betrachten.

Quote from: msc-o on April 06, 2010, 10:18:49 PM
Hilfe auch gern per Mail
Definitiv nicht - gibt's bei uns nicht.

Hier eine Lösung für Faule: einfach den folgenden Code in die Datei anycontent.php kopieren:<?php


if (!defined('IN_COPPERMINE')) {
    die(
'Not in Coppermine...');
}

print 
'<div id="styleWrapper" style="background-color:#D6D7DE;border-style:solid;border-color:#D6D7DE;display:block;">';
$theme_dir 'themes/';
$lineBreak "\r\n";
$themeCounter 0;

$dir opendir($theme_dir);
while (
$file readdir($dir)) {
    if (
is_dir($theme_dir $file) && $file != "." && $file != ".." && $file != '.svn' && $file != 'sample') {
        
$theme_array[] = $file;
        
$themeCounter++;
    }
}
closedir($dir);
natcasesort($theme_array);
$themeLoopCounter 0;
foreach(
$theme_array as $key) {
    
$theme_array_sorted[] = $key;
    if (
$key==$CONFIG['theme']) {
        
$indexOfCurrentTheme $themeLoopCounter;
    }
    
$themeLoopCounter++;
}

$demoPreviousTheme $theme_array_sorted[$indexOfCurrentTheme-1];
$demoNextTheme $theme_array_sorted[$indexOfCurrentTheme+1];

//get the url and all vars except $theme
$cpgChangeUrl $_SERVER["SCRIPT_NAME"]."?";
foreach (
$_GET as $key => $value) {
  if (
$key!="theme" && $key!="5x" && $key!="lang"){
      
$cpgChangeUrl.= $key "=" $value "&amp;";
  }
}

print 
'<table border="0" cellspacing="0" cellpadding="0">';
print 
'<tr>';
print 
'<td style="border:1px solid white;margin-right:5px;padding:2px; font-family: Arial, Helvetica, sans-serif; font-size: 9px; color:black;">';
print 
$themeCounter ' Themes: ';
if (
$demoPreviousTheme != '') {
    print 
'<a href="'.$cpgChangeUrl.'theme='.rawurlencode($demoPreviousTheme).'" style="font-family: Arial, Helvetica, sans-serif; font-size: 9px; border: 1px solid #005D8C; background-color:#EFEFEF; background-image : url(themes/classic/images/button_bg.gif); background-position : bottom; color: #000000; margin-top: 0px; margin-bottom: 0px; padding-top:2px; padding-bottom:2px; padding-left:1px; padding-right:1px; text-align: center; text-decoration: none;"  onmouseover="this.style.color=\'#5F5F5F\';" onmouseout="this.style.color=\'#000000\';" title="previous theme">';
    print 
'<img src="images/icons/leftleft.png" border="0" width="16 height="16" alt="" style="vertical-align: middle;margin-right: 1px;" /> '.strtr(ucfirst($demoPreviousTheme), '_'' ');
    print 
'</a>';
}
print 
'&nbsp;&nbsp;';


$return.= $lineBreak '<form name="demoChooseTheme" id="demoChooseTheme" action="' $_SERVER['PHP_SELF'] . '" method="get" style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;display:inline">' $lineBreak;
$return.= '<select name="demoThemeSelect" style="color: #000000; background-color: #EFEFEF; border: 1px solid #005D8C; font-size: 9px; font-family: Arial, Helvetica, sans-serif; vertical-align : middle;" onchange="if (this.options[this.selectedIndex].value) window.location.href=\'' $cpgChangeUrl 'theme=\' + this.options[this.selectedIndex].value;">' $lineBreak;
foreach (
$theme_array as $theme) {
   
$return.= '<option value="' $theme '" '.($CONFIG['theme'] == $theme 'selected="selected"' '').'>' strtr(ucfirst($theme), '_'' ') . '</option>' $lineBreak;
}
  
$return.=  '</select>' $lineBreak;
  
$return.=  '</form>' $lineBreak;
print 
$return;

if (
GALLERY_ADMIN_MODE) {
  function 
startElement($parser$element_name$element_attribute) {
      global 
$ausgabe;
      
//Umwandeln in Kleinbuchstaben
      
$element_name strtolower($element_name);
      
//Überprüfung des Elementnames
      
if ($element_name=="inhalt") {
          
$ausgabe .= "<h3>Inhalt</h3><p>";
      }
  }

  function 
endElement($parser$element_name) {
      global 
$ausgabe;
      
// in Kleinbuchstaben umwandeln
      
$element_name strtolower($element_name);
      
// Überprüfung des Names eines Elementes
      
if ($element_name=="inhalt") {
          
$ausgabe .= "</p>";
      }
  }

  function 
cdata($parser$element_inhalt) {
      global 
$ausgabe,$theme_dir,$CONFIG;
      
// Der normale Text wird an $ausgabe angehängt
      
$ausgabe .= $element_inhalt;
      }
      
$fileToCheck $theme_dir.$CONFIG['theme'].'/about.xml';
      if (
is_file($fileToCheck)== TRUE) {
        
$xmlFile file($fileToCheck);
        
$parser xml_parser_create();
        
xml_set_element_handler($parser"startElement""endElement");
        
xml_set_character_data_handler($parser"cdata");

        foreach(
$xmlFile as $elem) {
          
xml_parse($parser$elem);
        }
        
xml_parser_free($parser);
        echo 
$ausgabe;
        echo 
'.';
    }
}

if (
$demoNextTheme != '') {
    print 
'&nbsp;&nbsp;';
    print 
'<a href="'.$cpgChangeUrl.'theme='.rawurlencode($demoNextTheme).'" style="font-family: Arial, Helvetica, sans-serif; font-size: 9px; border: 1px solid #005D8C; background-color:#EFEFEF; background-image : url(themes/classic/images/button_bg.gif); background-position : bottom; color: #000000; margin-top: 0px; margin-bottom: 0px; padding-top:2px; padding-bottom:2px; padding-left:1px; padding-right:1px; text-align: center; text-decoration: none;"  onmouseover="this.style.color=\'#5F5F5F\';" onmouseout="this.style.color=\'#000000\';" title="next theme">';
    print 
strtr(ucfirst($demoNextTheme), '_'' ').' <img src="images/icons/rightright.png" border="0" width="16 height="16" alt="" style="vertical-align: middle;margin-right: 1px;" />';
    print 
'</a>';
}
print 
'&nbsp;&nbsp;';

if (
$CONFIG['theme'] != 'classic') {
    print 
'<a href="'.$cpgChangeUrl.'theme=xxx"><img src="images/flags/reset.png" width="16" height="11" border="0" alt="" title="reset to default theme" /></a> ';
}
print 
'</td>';
print 
'</tr>';
print 
'</table>';
print 
'</div>';
?>

<noscript>
The theme selectors for this page require JavaScript to be enabled. Please turn JavaScript on in your browser.
</noscript>

?>
(musst ihn vielleicht noch übersetzen). Dann anycontent aktivieren wie in in http://galerie.msc-oberflockenbach.de/docs/en/configuration.htm#admin_album_list_content beschrieben und fertig ist der Lack. Um nur registrierten Benutzern den Selector zu zeigen einfach im o.g. Code vor dem ersten print eine Abfrage setzen auf USER_ID.