added site lister
This commit is contained in:
parent
4487bf2806
commit
3456fae533
@ -2,7 +2,7 @@
|
||||
rm -rf dist
|
||||
mkdir dist
|
||||
mkdir dist/onionr/
|
||||
cp -t dist/onionr/ -r docs static-data install src onionr.sh start-daemon.sh setprofile.sh
|
||||
cp -t dist/onionr/ -r docs static-data install src onionr.sh start-daemon.sh setprofile.sh requirements.txt requirements-notifications.txt
|
||||
cp *.md dist/onionr/
|
||||
PIP_USER=false
|
||||
export PIP_USER
|
||||
|
@ -23,7 +23,7 @@ import filepaths
|
||||
DENIABLE_PEER_ADDRESS = "OVPCZLOXD6DC5JHX4EQ3PSOGAZ3T24F75HQLIUZSDSMYPEOXCPFA"
|
||||
PASSWORD_LENGTH = 25
|
||||
ONIONR_TAGLINE = 'Private P2P Communication - GPLv3 - https://Onionr.net'
|
||||
ONIONR_VERSION = '1.0.0'
|
||||
ONIONR_VERSION = '1.1.0'
|
||||
ONIONR_VERSION_TUPLE = tuple(ONIONR_VERSION.split('.')) # (MAJOR, MINOR, VERSION)
|
||||
API_VERSION = '0' # increments of 1; only change when something fundamental about how the API works changes. This way other nodes know how to communicate without learning too much information about you.
|
||||
MIN_PY_VERSION = 7 # min version of 7 so we can take advantage of non-cyclic type hints
|
||||
|
@ -39,7 +39,7 @@ def find_site(user_id: str) -> Union[BlockHash, None]:
|
||||
raise onionrexceptions.InvalidPubkey
|
||||
|
||||
found_site = None
|
||||
sites = blockmetadb.get_blocks_by_type('zsite')
|
||||
sites = blockmetadb.get_blocks_by_type('osite')
|
||||
|
||||
# Find site by searching all site blocks. eww O(N) ☹️, TODO: event based
|
||||
for site in sites:
|
||||
|
37
src/onionrcommands/listsites.py
Normal file
37
src/onionrcommands/listsites.py
Normal 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
|
@ -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,
|
||||
|
@ -1 +1 @@
|
||||
1580861160
|
||||
1580888911
|
@ -16,5 +16,9 @@ class OnionrTests(unittest.TestCase):
|
||||
testargs = ["onionr.py", "version"]
|
||||
with patch.object(sys, 'argv', testargs):
|
||||
parser.register()
|
||||
def test_site_list(self):
|
||||
testargs = ["onionr.py", "list-sites"]
|
||||
with patch.object(sys, 'argv', testargs):
|
||||
parser.register()
|
||||
|
||||
unittest.main()
|
||||
|
Loading…
Reference in New Issue
Block a user