add article logic