Ejemplo n.º 1
0
 /**
  * doExecute
  *
  * @return  void
  */
 public function doExecute()
 {
     $faker = \Faker\Factory::create();
     $blogMapper = new DataMapper('blogs');
     $authorMapper = new DataMapper('authors');
     $users = (new DataMapper('users'))->findAll();
     foreach ($blogMapper->findAll() as $blog) {
         // Is user
         $randUsers = $faker->randomElements(iterator_to_array($users), rand(1, 3));
         $hasOwner = false;
         foreach ($randUsers as $user) {
             $data = array();
             $data['user'] = $user->id;
             $data['blog'] = $blog->id;
             $data['admin'] = $hasOwner ? rand(0, 1) : 1;
             $data['owner'] = $hasOwner ? 0 : 1;
             $authorMapper->createOne($data);
             $hasOwner = true;
         }
         // Is Author
         foreach (range(1, rand(1, 3)) as $row) {
             $data = array();
             $data['blog'] = $blog->id;
             $data['name'] = $faker->name;
             $data['description'] = $faker->text();
             $data['image'] = 'http://cl.ly/Yapj/397512_301002056764411_3688152576777782947_n.jpg';
             $data['website'] = $faker->url;
             $authorMapper->createOne($data);
         }
     }
     $this->command->out('Author Seeder executed.')->out();
 }
Ejemplo n.º 2
0
 /**
  * doExecute
  *
  * @return  void
  */
 public function doExecute()
 {
     $faker = \Faker\Factory::create();
     $password = new \Windwalker\Crypt\Password();
     $pass = $password->create('1234');
     $userMapper = new DataMapper('users');
     foreach (range(1, 100) as $row) {
         $data['username'] = $row == 1 ? 'asika' : $faker->userName;
         $data['fullname'] = $row == 1 ? 'Simon Asika' : $faker->name;
         $data['email'] = $faker->email;
         $data['password'] = $pass;
         $data['description'] = $faker->text();
         $data['image'] = 'http://cl.ly/Yapj/397512_301002056764411_3688152576777782947_n.jpg';
         $data['website'] = $faker->url;
         $data['state'] = $faker->numberBetween(-1, 1);
         $data['timezone'] = $faker->timezone;
         $data['language'] = $faker->languageCode;
         $data['activation'] = md5(uniqid());
         $data['register_date'] = $faker->date;
         $data['last_visit_date'] = $faker->date;
         $data['params'] = '';
         $userMapper->createOne($data);
     }
     $this->command->out('User Seeder executed.')->out();
 }
Ejemplo n.º 3
0
 /**
  * doExecute
  *
  * @return  void
  */
 public function doExecute()
 {
     $faker = \Faker\Factory::create();
     $blogMapper = new DataMapper('blogs');
     $categoryMapper = new DataMapper('categories');
     $authorMapper = new DataMapper('authors');
     $postMapper = new DataMapper('posts');
     $psMappingMapper = new DataMapper('category_post_maps');
     $content = file_get_contents(__DIR__ . '/fixtures/testcase.md');
     list($introtext, $fulltext) = explode('<!-- {READMORE} -->', $content);
     $metadesc = $faker->text();
     foreach ($blogMapper->findAll() as $blog) {
         $authors = iterator_to_array($authorMapper->find(['blog' => $blog->id]));
         $categories = iterator_to_array($categoryMapper->find(['blog' => $blog->id]));
         // Post
         foreach (range(1, 30) as $row) {
             $data = array();
             $data['blog'] = $blog->id;
             $data['type'] = 'post';
             $data['title'] = $faker->sentence(rand(3, 8));
             $data['alias'] = \Windwalker\Filter\OutputFilter::stringURLSafe($data['title']);
             $data['introtext'] = $introtext;
             $data['fulltext'] = $fulltext;
             $data['metadesc'] = $metadesc;
             $data['state'] = 1;
             $data['created'] = $faker->dateTime->format('Y-m-d H:i:s');
             $data['modified'] = $faker->dateTime->format('Y-m-d H:i:s');
             $data['publish_up'] = '';
             $data['publish_down'] = '';
             $data['author'] = $faker->randomElement($authors)->id;
             $data = $postMapper->createOne($data);
             // Categories
             foreach ($faker->randomElements($categories, rand(1, 3)) as $category) {
                 $map['category'] = $category->id;
                 $map['post'] = $data['id'];
                 $psMappingMapper->createOne($map);
             }
         }
         // Static
         foreach (range(1, 3) as $row) {
             $data = array();
             $data['blog'] = $blog->id;
             $data['type'] = 'static';
             $data['title'] = $faker->sentence(rand(3, 8));
             $data['alias'] = \Windwalker\Filter\OutputFilter::stringURLSafe($data['title']);
             $data['introtext'] = $introtext;
             $data['fulltext'] = $fulltext;
             $data['metadesc'] = $metadesc;
             $data['state'] = 1;
             $data['created'] = $faker->dateTime->format('Y-m-d H:i:s');
             $data['modified'] = $faker->dateTime->format('Y-m-d H:i:s');
             $data['publish_up'] = '';
             $data['publish_down'] = '';
             $data['author'] = $faker->randomElement($authors)->id;
             $data = $postMapper->createOne($data);
         }
     }
     $this->command->out('Post Seeder executed.')->out();
 }
Ejemplo n.º 4
0
 /**
  * doExecute
  *
  * @return  void
  */
 public function doExecute()
 {
     $faker = \Faker\Factory::create();
     $password = new Password();
     $userMapper = new DataMapper('users');
     foreach (range(1, 10) as $i) {
         $data = array('username' => $faker->userName, 'email' => $faker->email, 'password' => $password->create('1234'));
         $userMapper->createOne($data);
     }
 }
Ejemplo n.º 5
0
 /**
  * Method to test createOne().
  *
  * @return void
  *
  * @covers Windwalker\DataMapper\AbstractDataMapper::createOne
  */
 public function testCreateOne()
 {
     // Create from array
     $data = array('title' => 'Foo flower', 'state' => 1);
     $newData = $this->instance->createOne($data);
     $this->assertEquals(92, $newData->id);
     $this->assertEquals(92, $this->loadToData('SELECT * FROM ww_flower ORDER BY id DESC LIMIT 1')->id);
     $this->assertInstanceOf('Windwalker\\Data\\Data', $newData, 'Return not Data object.');
     // Create from Data
     $data = new Data(array('title' => 'Foo flower', 'state' => 1));
     $newData = $this->instance->createOne($data);
     $this->assertEquals(93, $newData->id);
     $this->assertEquals(93, $this->loadToData('SELECT * FROM ww_flower ORDER BY id DESC LIMIT 1')->id);
     $this->assertInstanceOf('Windwalker\\Data\\Data', $newData, 'Return not Data object.');
 }
Ejemplo n.º 6
0
 /**
  * doExecute
  *
  * @return  void
  */
 public function doExecute()
 {
     $faker = \Faker\Factory::create();
     $blogMapper = new DataMapper('blogs');
     $categoryMapper = new DataMapper('categories');
     foreach ($blogMapper->findAll() as $blog) {
         foreach (range(1, rand(3, 6)) as $row) {
             $data = array();
             $data['blog'] = $blog->id;
             $data['title'] = $faker->sentence(rand(3, 8));
             $data['alias'] = \Windwalker\Filter\OutputFilter::stringURLSafe($data['title']);
             $data['image'] = 'http://unsplash.it/300/200';
             $data['state'] = 1;
             $data['ordering'] = $row;
             $categoryMapper->createOne($data);
         }
     }
     $this->command->out('Category Seeder executed.')->out();
 }
Ejemplo n.º 7
0
 /**
  * doExecute
  *
  * @return  void
  */
 public function doExecute()
 {
     $faker = \Faker\Factory::create();
     $blogMapper = new DataMapper('blogs');
     $users = (new DataMapper('users'))->findAll();
     foreach (range(1, 600) as $row) {
         $data['owner'] = $users[$faker->numberBetween(1, count($users) - 1)]->id;
         $data['title'] = $faker->sentence(4);
         $data['alias'] = \Windwalker\Filter\OutputFilter::stringURLSafe($data['title']);
         $data['sub_title'] = $faker->sentence(8);
         $data['description'] = $faker->text();
         $data['image'] = 'https://unsplash.it/200/300';
         $data['state'] = 1;
         $data['timezone'] = $faker->timezone;
         $data['disqus'] = 'asukademy';
         $data['webmaster'] = md5(1234);
         $data['analytics'] = 'UA-xxxx-xx-xx';
         $data['params'] = '';
         $blogMapper->createOne($data);
     }
     $this->command->out('Blog Seeder executed.')->out();
 }
Ejemplo n.º 8
0
 /**
  * createDefaultArticle
  *
  * @param \Admin\Controller\Blog\SaveController $blogCtrl
  *
  * @return  void
  */
 protected function createDefaultArticle(\Admin\Controller\Blog\SaveController $blogCtrl)
 {
     $blog = $blogCtrl->getBlog();
     $author = $blogCtrl->getAuthor();
     $postMapper = new DataMapper('posts');
     $content = file_get_contents(__DIR__ . '/../../Resources/post/hello.md');
     list($intro, $full) = explode('<!-- {READMORE} -->', $content);
     $post['blog'] = $blog->id;
     $post['author'] = $author->id;
     $post['type'] = 'post';
     $post['title'] = 'Hello World';
     $post['alias'] = 'hello-world';
     $post['introtext'] = $intro;
     $post['fulltext'] = $full;
     $post['state'] = 1;
     $post['created'] = (new Date())->format('Y-m-d H:i:s');
     $postMapper->createOne($post);
     $post['blog'] = $blog->id;
     $post['author'] = $author->id;
     $post['type'] = 'static';
     $post['title'] = 'About Me';
     $post['alias'] = 'about-me';
     $post['introtext'] = 'Hello I\'m ' . $author->name . '. Welcome to my blog.';
     $post['state'] = 1;
     $post['created'] = (new Date())->format('Y-m-d H:i:s');
     $postMapper->createOne($post);
 }
 /**
  * Create one record by data object.
  *
  * @param mixed $data Send a data in and store.
  *
  * @throws \InvalidArgumentException
  * @return  mixed|Data Data with inserted id.
  */
 public function createOne($data)
 {
     $this->observers->update('onBeforeCreateOne', array(&$data));
     $data = parent::createOne($data);
     $this->observers->update('onAfterCreateOne', array(&$data));
     return $data;
 }