Hi, Martin. I thought I'll post it here instead of just sending an email.
In line 189 of adsense-manager.php is function widget.
If $n is already set then substr($args['widget_id'],9) will not be applied. Also, if $n is empty, it will try to do the substr.
Here is my suggestion:
if ($n == '') { $n='default-ad'; }
if ($n !== 'default-ad') {
$n = substr($args['widget_id'], 9);
$ad = $_adsensem['ads'][$n];
} else {
$ad = $_adsensem['ads'][$_adsensem['default-ad']];
}
http://wordpress.org/extend/plugins/adsense-manager/
Sorry, I just figured out that we also need to check if $args['widget_id'] is not empty and only then use the default-ad.
if ($n == '' && empty($args['widget_id'])) { $n = 'default-ad'; }
if ($n !== 'default-ad') {
$n = substr($args['widget_id'], 9);
$ad = $_adsensem['ads'][$n];
} else {
$ad = $_adsensem['ads'][$_adsensem['default-ad']];
}
Here is the ultimate version, which also includes situation when $args['widget_id'] is empty and $n is a the necessary ad id:
if ($n == '' && empty($args['widget_id'])) {
$n = 'default-ad';
} elseif (!empty($args['widget_id'])) {
$n = substr($args['widget_id'], 9);
$ad = $_adsensem['ads'][$n];
} elseif (!empty($n)) {
$ad = $_adsensem['ads'][$n];
} else {
$ad = $_adsensem['ads'][$_adsensem['default-ad']];
}