added site lister

This commit is contained in:
Kevin Froman 2020-02-05 01:49:24 -06:00
parent 4487bf2806
commit 3456fae533
7 changed files with 47 additions and 4 deletions

View file

@ -0,0 +1,37 @@
"""Onionr - Private P2P Communication.
Dumb listing of Onionr sites
"""
from coredb.blockmetadb import get_blocks_by_type
from onionrblocks.onionrblockapi import Block
import logger
"""
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
"""
def print_site_list():
"""Create a new MOTD message for the Onionr network."""
block_list = get_blocks_by_type('osite')
if not block_list:
logger.info('No sites saved right now', terminal=True)
for block in block_list:
block = Block(block)
if block.isSigned():
logger.info(block.signer.replace('=', ''), terminal=True)
else:
logger.info(block.hash, terminal=True)
print_site_list.onionr_help = "Dumbly list all Onionr sites currently saved" # type: ignore

View file

@ -18,6 +18,7 @@ from .. import runtimetestcmd # cmd to execute the runtime integration tests
from .. import motdcreator # cmd to generate new Onionr MOTDs
from .. import sitecreator # cmd to create multi-page sites
from .. import togglebootstrap # cmd to toggle bootstrap file usage
from ..listsites import print_site_list # cmd to list list ids
import onionrexceptions
from onionrutils import importnewblocks # func to import new blocks
@ -59,6 +60,7 @@ def get_arguments() -> dict:
('addhtml', 'add-html'): filecommands.add_html,
('addsite', 'add-site',
'update-site', 'updatesite'): sitecreator.create_multipage_site,
('listsites', 'list-sites'): print_site_list,
('addfile', 'add-file'): filecommands.add_file,
('get-file', 'getfile'): filecommands.get_file,
('export-block', 'exportblock'): exportblocks.export_block,