예제 #1
0
    def handle(self, *args, **options):
        root_dir = "helloworld/static_site"
        host = "http://localhost:4444"
        self._create_output_dir(root_dir)

        # home
        self._url_to_file(host, "{}/index.html"
                          .format(root_dir))

        # about
        self._url_to_file("{}/about/".format(host), "{}/about.html".
                          format(root_dir))
        # keybase
        self._url_to_file("{}/keybase.txt".format(host), "{}/keybase.txt".
                          format(root_dir))

        # contact
        self._url_to_file("{}/contact/".format(host),
                          "{}/contact.html".format(root_dir))

        # css
        self._create_output_dir("{}/static".format(root_dir))
        files = ['material.css', 'styles.css', 'per.css',
                 'per.html', 'per.js', 'p.png']
        for f in files:
            self._url_to_file("{}/static/{}/".format(host, f),
                              "{}/static/{}".format(root_dir, f))

        # blog home
        self._url_to_file("{}/blog/".format(host),
                          "{}/blog.html".format(root_dir))

        # blog posts
        Post.collect_published_posts("{}/blog".format(root_dir))

        # rss
        self._url_to_file("{}/rss/".format(host),
                          "{}/rss.xml".format(root_dir))
        self._url_to_file("{}/static/{}/".format(host, 'feed-icon.svg'),
                          "{}/static/{}".format(root_dir, 'feed-icon.svg'))

        # vivaldi
        files = ['vivaldi.js', 'vivaldi.js.map']

        for f in files:
            self._url_to_file("{}/static/{}/".format(host, f),
                              "{}/static/{}".format(root_dir, f))

        # icons
        os.mkdir('{}/static/icons'.format(root_dir))
        files = [
            'github.png',
            'hn.ico',
            'pythonic-trans.png',
            'quora.png',
            'stackoverflow.ico',
            'twitter.png',
        ]
        for f in files:
            self._url_to_file(
                '{}/static/icons/{}'.format(host, f),
                '{}/static/icons/{}'.format(root_dir, f)),

        # bg
        self._url_to_file(
            '{}/static/bg.jpg/'.format(host),
            '{}/static/bg.jpg'.format(root_dir)
        )