Snippets

Deze database laat de laatste snippets zien voor phpBB3. Snippets zijn kleine stukjes code die speciale functionaliteit toevoegen. Er zijn 13 snippets in de database.

Laatste snippets

GPSIES in je forum
door John op 12 december 2011
Verkeerde login's zien
door John op 3 januari 2010
On Page
door John op 3 januari 2010
Topictitel bij je donwload
door John op 4 november 2008
Gesloten topics onderaan
door John op 15 oktober 2008

Snippets
GPSIES in je forum

Publiceer je tracks in je forum, met de bbcode [gpsies=trackcode]Je tracktitel[/gpsies] kan je nu jouw track zichtbaar maken in je forum.


Snippets: Selecteer alles
  1. In constants.php wijzig je NUM_CORE_BBCODES in 13.
  2.  
  3. In bbcode.php voeg je in functie bbcode_second_pass op regel 116:
  4.  if ($bbcode_id == 13)
  5. {
  6.     if (preg_match("/fileId=([a-z]{12,19})/", $message, $matches))
  7.     {
  8.             $track = '</iframe>' . gpsies_properties($matches[1]) . '</div><br style="clear:both;" />';
  9.             $message = preg_replace("~</iframe>~", $track, $message);
  10.     }else
  11.     {
  12.         $message .= '</div>';
  13.     }
  14. }
  15.  
  16. Op regel 346 in functie bbcode_cache_init voeg je toe:
  17.     case 13:
  18.         $this->bbcode_cache[$bbcode_id] = array(
  19.             'preg' => array(
  20.                 '!\[gpsies=(#[0-9a-f]{3}|#[0-9a-f]{6}|[a-z\-]+):$uid\](.*?)\[/gpsies:$uid\]!is'    => $this->bbcode_tpl('gpsies', $bbcode_id),
  21.             )
  22.         );
  23.     break;
  24.  
  25. In functie bbcode_tpl op regel 425 voeg je toe:
  26.     'gpsies'    => '<div><iframe src="http://www.gpsies.com/mapOnly.do?fileId=$1" style="float:left; width:400px; height:400px; border:none;" scrolling="no" title="$2"></iframe>',
  27.  
  28. In functions.php voeg je op het einde toe:
  29. function gpsies_properties($gpsies='')
  30. {
  31.     $gpsies_api_key = je api key
  32.     $gpsies_url_api = 'http://www.gpsies.com/api.do?key=';
  33.     $gpsies_url_api .= $gpsies_api_key;
  34.     $gpsies = 'fileId=' . $gpsies . ' show=details';
  35.  
  36.     $defaults = array(
  37.         CURLOPT_URL => $gpsies_url_api . (strpos($gpsies_url_api, '?') === FALSE ? '?' : '&') . $gpsies,
  38.         CURLOPT_HEADER => 0,
  39.         CURLOPT_RETURNTRANSFER => TRUE,
  40.         CURLOPT_TIMEOUT => 4
  41.     );
  42.  
  43.     $ch = curl_init();
  44.     curl_setopt_array($ch, ($defaults));
  45.     if (!$result = curl_exec($ch))
  46.     {
  47.         trigger_error(curl_error($ch));
  48.     }
  49.     curl_close($ch);
  50.     $xmlresp = $result;
  51.    
  52.     $xmlgpsies = new SimpleXMLElement($xmlresp);    
  53.     $tracksrev = array_reverse($xmlgpsies->tracks->xpath('track'));
  54.     $trackinfo = 'Geen data beschikbaar!';
  55.     foreach ($tracksrev as $track)
  56.     {
  57.         $trackinfo ='<div style="float:left; width:250px; font-size:11px; margin-left:10px;">
  58.                    <strong>Track naam:</strong> ' . $track->title . '
  59.                    <strong>Track lengte:</strong> ' . round((real)$track->trackLengthM/1000, 1) . ' km
  60.                    <strong>Hoogteverschil:</strong> ' . $track->altitudeDifferenceM . ' m
  61.                    <strong>Minimum hoogte:</strong> ' . $track->altitudeMinHeightM . ' m
  62.                    <strong>Maximum hoogte:</strong> ' . $track->altitudeMaxHeightM . ' m
  63.                    <strong>Klimmen:</strong> ' . $track->totalAscentM . ' m | '.
  64.                     '<strong>Afdalen:</strong> ' . $track->totalDescentM . ' m
  65.                    <strong>Adres:</strong> ' . $track->startPointAddress . '
  66.                    <strong>Latitude:</strong> ' . $track->startPointLat . '
  67.                    <strong>Longitude:</strong> ' . $track->startPointLon . '</div>';
  68.     }
  69.     return $trackinfo;    
  70. }
  71.  
  72. In message_parser.php rond regel 128 voeg je toe:
  73. 'gpsies'        => array('bbcode_id' => 13,    'regexp' => array('!\[gpsies=(#[0-9a-f]{3}|#[0-9a-f]{6}|[a-z\-]+)\](.*?)\[/gpsies\]!uise' => "\$this->bbcode_gpsies('\$1', '\$2')")),
  74.  
  75. en rond regel 281:
  76.     /**
  77.     * Parse gpsies tag
  78.     */
  79.     function bbcode_gpsies($stx, $in)
  80.     {
  81.         if (!$this->check_bbcode('gpsies', $in))
  82.         {
  83.             return $in;
  84.         }
  85.         return '[gpsies=' . $stx . ':' . $this->bbcode_uid . ']' . $in . '[/gpsies:' . $this->bbcode_uid . ']';
  86.     }
47749 maal bekeken
© John Peskens    scripts by Forumhulp.com