понедельник, 25 августа 2008 г.
Блог моего друга
Мой друг devaka открыл блог, посвященный SEO. Приглашаю всех познакомиться с его авторскими статьями и переводами англоязычных ресурсов. Очень много полезной и интересной информации :).
Ситуация с ADSense выправилась!
Муж написал письмо с апелляцией. Сначала пришел ответ, в котром было всё то же самое: аккаунт мой причиняет страшный вред рекламодателям и он будет закрыт навеки.
Через пару дней пришло второе письмо. В нём говорилось, что пройдя повторную проверку, мой аккаунт разблокировали. Восстановить рекламу на сайте я смогу через 48 часов. И вот, адсенс снова со мной, снова на Фотостартике!!! Приятно, что реабилитировали, что оказалось всё по-честному. Тем более, что на самом деле мой аккаунт никак рекламодателям не угрожал.
Через пару дней пришло второе письмо. В нём говорилось, что пройдя повторную проверку, мой аккаунт разблокировали. Восстановить рекламу на сайте я смогу через 48 часов. И вот, адсенс снова со мной, снова на Фотостартике!!! Приятно, что реабилитировали, что оказалось всё по-честному. Тем более, что на самом деле мой аккаунт никак рекламодателям не угрожал.
Ярлыки:
адсенс,
справедливость восторжествовала,
ADSense
пятница, 8 августа 2008 г.
Рыбный ужас нашего городка
Ужасная ситуация разворачивается вокруг любимой гимназии и её директора, Виктора Альбертовича. Оганесяна обвиняют во всех смертных грехах. В противовес делаем, что можем - http://www.gymnasium1.org/
вторник, 5 августа 2008 г.
Гугл АдСенс
Очень расстроил меня один сегодняшний факт. На моём сайте висел AdSense. Где-то с апреля. Приносил 20-50 центов с таргет-аудиторией порядка 200 человек в день. Мне, конечно, эти деньги вообще погоды не делали. Но было приятно думать, что когда-нибудь, через годы, с этих денег я сделаю апгрейд на зеркалку.
Так вот, сегодня я обнаружила, что вместо рекламных блоков висит "Невозможно отобразить страницу". Пожаловалсь мужу, который этот AdSense и прикручивал. Он зашел в аккаунт, а там письмо. Своими словами: ваш аккаунт заблокированв связи с тем, что мой сайт "представляет опасность для рекламодателей".
Мне так стало обидно. Со своей параноидальной честностью, доставшейся мне от мамы-коммунистки, я никогда ничего противоправного не делала. Фотостарт - это всё равно что мой ребенок. Только холила и лелеяла. Не накликивала, не накручивала просмотры. А тут письмо и с такой формулировкой.
Одного знакомого отлучили из-за порнокартинок. Это понятно. Другому прислали предупреждение, чтоб не скликивал. Это тоже понятно...Но за что же меня? Это всё равно, что я работала на них несколько месяцев, а теперь выгнали и денег не заплатили. И главное, вообще без обоснования. Ну что это за "опасность для рекламодателей"??? Мне всегда казалось, что Гугл - образец честности. А теперь на собственной шкуре... Обидно. Нет, не из-за 30 центов в день! Обидно, что как-то не по-человески, за мечту о зеркалке...
Так вот, сегодня я обнаружила, что вместо рекламных блоков висит "Невозможно отобразить страницу". Пожаловалсь мужу, который этот AdSense и прикручивал. Он зашел в аккаунт, а там письмо. Своими словами: ваш аккаунт заблокированв связи с тем, что мой сайт "представляет опасность для рекламодателей".
Мне так стало обидно. Со своей параноидальной честностью, доставшейся мне от мамы-коммунистки, я никогда ничего противоправного не делала. Фотостарт - это всё равно что мой ребенок. Только холила и лелеяла. Не накликивала, не накручивала просмотры. А тут письмо и с такой формулировкой.
Одного знакомого отлучили из-за порнокартинок. Это понятно. Другому прислали предупреждение, чтоб не скликивал. Это тоже понятно...Но за что же меня? Это всё равно, что я работала на них несколько месяцев, а теперь выгнали и денег не заплатили. И главное, вообще без обоснования. Ну что это за "опасность для рекламодателей"??? Мне всегда казалось, что Гугл - образец честности. А теперь на собственной шкуре... Обидно. Нет, не из-за 30 центов в день! Обидно, что как-то не по-человески, за мечту о зеркалке...
суббота, 19 июля 2008 г.
Фотоэкскурсии
Сегодня появилась на свет первая моя фотоэкскурсия по Главной улице северо-восточной части херсонесского городища. Расчитываю, что со временем материала прибавится. Планов много, времени нет :).
вторник, 1 июля 2008 г.
DataGrid html CellRenderer
На днях возникла необходимость в одной из задач заставить табличный компонент Flex-а (DataGrid) заставить отображать html-форматированный текст.
Табличка имела заранее неизвестное число столбцов, которое определялось из подгружаемого XML.
Соответственно, для каждой требуемой колонки назначался CellRenderer (в моем случае, для всех):
Вот так формировался мой DataGrid. При этом каждой колонке можно назначить свой рендерер. Но этот рендерер необходимо предварительно создать.
Представляет собой он отдельный as-файл MultilineHTMLRenderer.as, в котором введен следующий код:
package
{
import mx.controls.DataGrid;
import mx.controls.dataGridClasses.DataGridItemRenderer;
import mx.controls.dataGridClasses.DataGridColumn;
import mx.controls.listClasses.*
import mx.styles.StyleManager;
import mx.core.IFactory;
public class MultilineHTMLRenderer extends DataGridItemRenderer implements IFactory
{
public function MultilineHTMLRenderer()
{
super();
}
public function newInstance():*
{
return new MultilineHTMLRenderer();
}
override public function validateProperties():void
{
super.validateProperties();
if (listData)
{
var dg:DataGrid = DataGrid(listData.owner);
var column:DataGridColumn = dg.columns[listData.columnIndex];
styleSheet=InterfaceManager.myStyleSheet;
multiline=true;
htmlText = data[column.dataField];
}
}
}
}
Переопределяется метод validateProperties(), в котором задаются:
Табличка имела заранее неизвестное число столбцов, которое определялось из подгружаемого XML.
Соответственно, для каждой требуемой колонки назначался CellRenderer (в моем случае, для всех):
for (var i:Number=0;i<colxml.children().length();i++)
{
var newcol:DataGridColumn=new DataGridColumn(colxml.children()[i].@title);
newcol.width=colxml.children()[i].@width;
newcol.resizable=false;
newcol.dataField=colxml.children()[i].@attr;
if (colxml.children()[i].@sortby!=null)
{
newcol.sortCompareFunction=mySort;
}
newcol.wordWrap=true;
newcol.itemRenderer=new MultilineHTMLRenderer();
if (colArr[i]!=null) colArr[i]=newcol
else
colArr.push(newcol);
}
DG.columns=colArr;
Вот так формировался мой DataGrid. При этом каждой колонке можно назначить свой рендерер. Но этот рендерер необходимо предварительно создать.
Представляет собой он отдельный as-файл MultilineHTMLRenderer.as, в котором введен следующий код:
package
{
import mx.controls.DataGrid;
import mx.controls.dataGridClasses.DataGridItemRenderer;
import mx.controls.dataGridClasses.DataGridColumn;
import mx.controls.listClasses.*
import mx.styles.StyleManager;
import mx.core.IFactory;
public class MultilineHTMLRenderer extends DataGridItemRenderer implements IFactory
{
public function MultilineHTMLRenderer()
{
super();
}
public function newInstance():*
{
return new MultilineHTMLRenderer();
}
override public function validateProperties():void
{
super.validateProperties();
if (listData)
{
var dg:DataGrid = DataGrid(listData.owner);
var column:DataGridColumn = dg.columns[listData.columnIndex];
styleSheet=InterfaceManager.myStyleSheet;
multiline=true;
htmlText = data[column.dataField];
}
}
}
}
Переопределяется метод validateProperties(), в котором задаются:
- styleSheet - заранее сформированный в проекте набор стилей (каким шрифтом, какого цвета выводятся ссылки и пр.). Его можно не указывать, если нет требований. Можно управлять внешним видом через html-тэги, а стили игнорировать.
- multiline - нужно обязательно указать в true, иначе тэги переноса строки не будут работать. Например,
. - htmlText - свойство, в которое записывается сам текст, содержащий разметку. Он берется из data[column.dataField].
воскресенье, 25 мая 2008 г.
Photoglade.com
Сегодня запустили в интернет еще один проект с фотографиями цветов. Он называется PhotoGlade. Переводится как фотолужайка. Название придумала я :). Информации пока что немного, все на стадии наполнения и развития.
Подписаться на:
Сообщения (Atom)