Thursday, April 4, 2013

"Help, I've been blacklisted/greylisted on Drupal.org!" - Here is some insight into this problem.

When attempting to access drupal.org, some users have reported seeing something about "http:BL" had greylisted them.

What is http:BL?
Http:BL is a way for website administrators to take advantage of the data generated by Project Honey Pot and keep malicious or suspicious IPs off their websites. The service works by publishing DNS records for IPs we have seen conducting suspicious or malicious behavior online. Website administrators can then use this data in order to restrict access to their web servers for these IPs.
 
The fact that you have been greylisted or blacklisted means that "Project Honeypot" has determined that your IP has been connected with questionable activity. According to Project Honeypot:

"Project Honey Pot is the first and only distributed system for identifying spammers and the spambots they use to scrape addresses from your website. Using the Project Honey Pot system you can install addresses that are custom-tagged to the time and IP address of a visitor to your site. If one of these addresses begins receiving email we not only can tell that the messages are spam, but also the exact moment when the address was harvested and the IP address that gathered it."

 You can contact site administrators to get your IP address "whitelisted", this allows your IP to connect to their servers once again. In the case of Drupal use http://drupal.org/httpbl/whitelist  The delay between submitting the request to become whitelisted and it actually happening will increase each subsequent time you get greylisted. Additionally ask for support in the IRC channel #drupal-infrastructure. Even if you can't access IRC directly for whatever reason you can access it easily using http://webchat.freenode.net/
Of course you could also use a proxy, something like www.hidemyass.com 

In any case, I would run a full scan on your system to make sure you don't have any malware/etc running that could be carrying out spam or DDOS activities from your computer. This will result in your IP being greylisted again.

Wednesday, April 3, 2013

Drupal 7 theming - Work in Progress - Template cheat sheet

page.tpl.php variables
General Variables
$base_path The base URL path of the Drupal installation.
$directory The directory where the current selected template is located.
$is_front TRUE if the current page is the front page.
$logged_in TRUE if the user is registered and logged in.
$is_admin TRUE if the user has permission to access administration pages.
Site Identity
$front_page URL of the front page
$logo Path to the logo image
$site_name Name of the site
$site_slogan Slogan of the site
$highlight Highlighted content, typically found at the top. See “$mission”
$title_prefix An array containing additional output populated by modules
$title The page title
$title_suffix An array containing additional output populated by modules.
$messages HTML for status and error messages
$tabs Tabs linking to any sub-pages beneath the current page
$action_links Actions local to the page
$feed_icons A string of all feed icons for the current page
$node The node object
$mission deprecated
Navigation
$main_menu An array containing the Main menu links for the site
$secondary_menu An array containing the Secondary menu links for the site
$breadcrumb The breadcrumb trail for the current page
html.tpl.php variables
$css An array of CSS files for the current page.
$language The language the site is being displayed in.
$language->dir $language->language contains the language direction. It will either be ‘ltr’ or ‘rtl’. contains its textual representation.
$head_title A modified version of the page title, for use in the TITLE tag.
$head_title_array An associative array containing title : The title of the current page, if any. name: The name of the site. slogan: The slogan of the site, if any, and if there is no title.
$head Markup for the HEAD section (including meta tags, keyword tags, and so on)
$styles Style tags necessary to import all CSS files for the page
$scripts Script tags necessary to load the JavaScript files and settings for the page
$page_top Initial markup from any modules that have altered the page.
$page Rendered page content
$page_bottom Final closing markup from any modules that have altered the page. This variable should always be output last, after all other dynamic content.
$classes String of classes that can be used to style contextually through CSS.
block.tpl.php variables
Available Variables
$title Block title
$content Block content.
$block->module Module that generated the block.
$block->delta An ID for the block
$block->region The block region embedding the current block
$classes String of classes that can be used to style contextually through CSS
$title_prefix An array containing additional output
$title_suffix An array containing additional output
Helper Variables
$classes_array Array of HTML class attribute values
$block_zebra Outputs ‘odd’ and ‘even’ dependent on each block region.
$zebra Same output as $block_zebra but independent of any block region.
$block_id Counter dependent on each block region.
$id Same output as $block_id but independent of any block region.
$is_front Flags true when presented in the front page
$logged_in lags true when the current user is a logged in member.
$is_admin Flags true when the current user is an administrator.
$block_html_id A valid HTML ID and guaranteed unique.






node.tpl.php variables
Available Variables
$title The title of the node.
$content An array of node items. Use render($content) to print them all, or print a subset such as render($content[‘field_ example’]). Use hide($content[‘field_example’]) to temporarily suppress the printing of a given element.
$user_picture The node author’s picture from user-picture.tpl.php.
$date Formatted creation date
$name Themed username of node author output from theme_ username().
$terms the themed list of taxonomy term links output from theme_links().
$node_url Direct url of the current node.
$display_submitted Whether submission information should be displayed.
$submitted Submission information created from $name and $date during
$classes String of classes that can be used to style contextually through CSS
$title_prefix An array containing additional output populated by modules
$title_suffix An array containing additional output populated by modules
Other variables
$node Full node object
$type Node type
$comment_count Number of comments attached to the node.
$uid User ID of the node author.
$created Time the node was published formatted in Unix timestamp.
$classes_array Array of HTML class attribute values.
$zebra Outputs either “even” or “odd”.
$id Position of the node. Increments each time it’s output.
$terms Outputs taxonomy terms associated to nodes
Node Status
$view_mode View mode, e.g. ‘full’, ‘teaser’.
$teaser Flag for the teaser state (shortcut for $view_mode == ‘teaser’)
$page: Flag for the full page state.
$promote lag for front page promotion state.
$sticky Flags for sticky post setting.
$status Flags for content status
$comment State of comment settings for the node.
$readmore Flags TRUE if the teaser content of the node cannot hold the main body content.
$is_front Flags TRUE if current page is the front page.
$logged_in Flags TRUE when the current user is a logged in member.
$is_admin Flags TRUE when the current user is an administrator.
comment.tpl.php variables
$author Author of the comment
$content An array of comment items. Use render($content) to print them all, or print a subset such as render($content[‘field_ example’])
$created Formatted date and time for when the comment was created
$changed Formatted date and time for when the comment was last changed.
$new New comment marker.
$permalink Comment permalink.
$submitted Submission information created from $author and $created
$picture Author's picture.
$signature Author's signature.
$status Comment status
$title Linked title.
$classes String of classes that can be used to style contextually through CSS
$title_prefix An array containing additional output populated by modules
$title_suffix An array containing additional output populated by modules
$comment Full comment object
$node Node object the comments are attached to
Template files
[themename].info Meta data, CSS, JavaScript, block regions
html.tpl.php Page wrapper for your theme. Here you have the DOCTYPE declaration, the <head> info, and page closer.
page.tpl.php Default theme implementation to display a single Drupal page.
region.tpl.php Default theme implementation to display a region.
block.tpl.php Default theme implementation to display a block.
node.tpl.php Default theme implementation to display a node.
node--[content-type].tpl.php Template for displaying a node of a specific content type.
page--front.tpl.php Default theme implementation to display a custom frontpage
node--blog.tpl.php Default theme implementation to display a node of type blog
page--node-[#].tpl.php Theme implementation to display page with node ID #
block--[region].tpl.php Theme implementation for block in region name
html.tpl.php code
$header <head profile=”<?php print $grddl_profile; ?>”> <?php print $head; ?> <title><?php print $head_title; ?></title> <?php print $styles; ?> <?php print $scripts; ?> </head>
body <body class=”<?php print $classes; ?>” <?php print $attributes;?>> <div id=”skip-link”> <a href=”#main-menu”><?php print t(‘Jump to Navigation’); ?></a> </div> <?php print $page_top; ?> <?php print $page; ?> <?php print $page_bottom; ?> </body>
Logo <?php if ($logo): ?> <a href=”<?php print $front_page; ?>” title=”<?php print t(‘Home’); ?>” rel=”home” id=”logo”><img src=”<?php print $logo; ?>” alt=”<?php print t(‘Home’); ?>” /></a> <?php endif; ?>
Site Name <?php if ($site_name): ?> <?php if ($title): ?> <div id=”site-name”><strong> <a href=”<?php print $front_page; ?>” title=”<?php print t(‘Home’); ?>” rel=”home”><span><?php print $site_name; ?></span></a> </strong></div> <?php else: ?> <h1 id=”site-name”> <a href=”<?php print $front_page; ?>” title=”<?php print t(‘Home’); ?>” rel=”home”><span><?php print $site_name; ?></span></a> </h1> <?php endif; ?> <?php endif; ?>
Site Slogan <?php if ($site_slogan): ?> <div id=”site-slogan”><?php print $site_slogan; ?></div> <?php endif; ?>
Header <?php print render($page[‘header’]); ?>
Highlight <?php print render($page[‘highlight’]); ?>
Breadcrum <?php print $breadcrumb; ?>
Title Prefix <?php print render($title_prefix); ?>
Page Title <h1 class=”title” id=”page-title”><?php print $title; ?></h1>
Title Suffix <?php print render($title_suffix); ?>
Messages <?php print $messages; ?>
Tabs <?php print render($tabs); ?>
Help <?php print render($page[‘help’]); ?>
Content <?php print render($page[‘content’]); ?>
Action Links <ul class=”action-links”><?php print render($action_links); ?></ul>
Main Menu <?php print theme(‘links__system_main_menu’, array( ‘links’ => $main_menu, ‘attributes’ => array( ‘id’ => ‘main-menu’, ‘class’ => array(‘links’, ‘clearfix’), ), ‘heading’ => array( ‘text’ => t(‘Main menu’), ‘level’ => ‘h2’, ‘class’ => array(‘element-invisible’), ),)); ?>
Secondary Menu <?php print theme(‘links__system_secondary_menu’, array( ‘links’ => $secondary_menu, ‘attributes’ => array( ‘id’ => ‘secondary-menu’, ‘class’ => array(‘links’, ‘clearfix’), ), ‘heading’ => array( ‘text’ => t(‘Secondary menu’), ‘level’ => ‘h2’, ‘class’ => array(‘element-invisible’), ),)); ?>
Navigation <?php print render($page[‘navigation’]); ?>
Sidebar Region <?php print render($page[‘sidebar_first’]); ?>
Footer <?php print render($page[‘footer’]); ?>

test