8 changed files with 246 additions and 0 deletions
-
1.gitignore
-
13.idea/NotePostCLI.iml
-
4.idea/encodings.xml
-
4.idea/misc.xml
-
8.idea/modules.xml
-
6.idea/vcs.xml
-
155.idea/workspace.xml
-
55notepost.py
@ -0,0 +1 @@ |
|||
venv/ |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<module type="PYTHON_MODULE" version="4"> |
|||
<component name="NewModuleRootManager"> |
|||
<content url="file://$MODULE_DIR$"> |
|||
<excludeFolder url="file://$MODULE_DIR$/venv" /> |
|||
</content> |
|||
<orderEntry type="inheritedJdk" /> |
|||
<orderEntry type="sourceFolder" forTests="false" /> |
|||
</component> |
|||
<component name="TestRunnerService"> |
|||
<option name="PROJECT_TEST_RUNNER" value="Unittests" /> |
|||
</component> |
|||
</module> |
@ -0,0 +1,4 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="Encoding" addBOMForNewFiles="with NO BOM" /> |
|||
</project> |
@ -0,0 +1,4 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.6 (NotePostCLI) (2)" project-jdk-type="Python SDK" /> |
|||
</project> |
@ -0,0 +1,8 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="ProjectModuleManager"> |
|||
<modules> |
|||
<module fileurl="file://$PROJECT_DIR$/.idea/NotePostCLI.iml" filepath="$PROJECT_DIR$/.idea/NotePostCLI.iml" /> |
|||
</modules> |
|||
</component> |
|||
</project> |
@ -0,0 +1,6 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="VcsDirectoryMappings"> |
|||
<mapping directory="$PROJECT_DIR$" vcs="Git" /> |
|||
</component> |
|||
</project> |
@ -0,0 +1,155 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="ChangeListManager"> |
|||
<list default="true" id="7e2ff7f2-75de-431f-9457-e0d648b65015" name="Default Changelist" comment="" /> |
|||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> |
|||
<option name="SHOW_DIALOG" value="false" /> |
|||
<option name="HIGHLIGHT_CONFLICTS" value="true" /> |
|||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" /> |
|||
<option name="LAST_RESOLUTION" value="IGNORE" /> |
|||
</component> |
|||
<component name="FileEditorManager"> |
|||
<leaf> |
|||
<file pinned="false" current-in-tab="true"> |
|||
<entry file="file://$PROJECT_DIR$/notepost.py"> |
|||
<provider selected="true" editor-type-id="text-editor"> |
|||
<state relative-caret-position="240"> |
|||
<caret line="16" column="12" lean-forward="true" selection-start-line="16" selection-start-column="12" selection-end-line="16" selection-end-column="12" /> |
|||
<folding> |
|||
<element signature="e#23#42#0" expanded="true" /> |
|||
</folding> |
|||
</state> |
|||
</provider> |
|||
</entry> |
|||
</file> |
|||
</leaf> |
|||
</component> |
|||
<component name="Git.Settings"> |
|||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" /> |
|||
</component> |
|||
<component name="IdeDocumentHistory"> |
|||
<option name="CHANGED_PATHS"> |
|||
<list> |
|||
<option value="$PROJECT_DIR$/notepost.py" /> |
|||
</list> |
|||
</option> |
|||
</component> |
|||
<component name="ProjectFrameBounds" extendedState="6"> |
|||
<option name="x" value="260" /> |
|||
<option name="y" value="21" /> |
|||
<option name="width" value="1400" /> |
|||
<option name="height" value="1000" /> |
|||
</component> |
|||
<component name="ProjectLevelVcsManager" settingsEditedManually="true" /> |
|||
<component name="ProjectView"> |
|||
<navigator proportions="" version="1"> |
|||
<foldersAlwaysOnTop value="true" /> |
|||
</navigator> |
|||
<panes> |
|||
<pane id="Scope" /> |
|||
<pane id="ProjectPane"> |
|||
<subPane> |
|||
<expand> |
|||
<path> |
|||
<item name="NotePostCLI" type="b2602c69:ProjectViewProjectNode" /> |
|||
<item name="NotePostCLI" type="462c0819:PsiDirectoryNode" /> |
|||
</path> |
|||
<path> |
|||
<item name="NotePostCLI" type="b2602c69:ProjectViewProjectNode" /> |
|||
<item name="External Libraries" type="cb654da1:ExternalLibrariesNode" /> |
|||
</path> |
|||
</expand> |
|||
<select /> |
|||
</subPane> |
|||
</pane> |
|||
</panes> |
|||
</component> |
|||
<component name="RunDashboard"> |
|||
<option name="ruleStates"> |
|||
<list> |
|||
<RuleState> |
|||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" /> |
|||
</RuleState> |
|||
<RuleState> |
|||
<option name="name" value="StatusDashboardGroupingRule" /> |
|||
</RuleState> |
|||
</list> |
|||
</option> |
|||
</component> |
|||
<component name="RunManager"> |
|||
<configuration name="notepost" type="PythonConfigurationType" factoryName="Python" temporary="true"> |
|||
<module name="NotePostCLI" /> |
|||
<option name="INTERPRETER_OPTIONS" value="" /> |
|||
<option name="PARENT_ENVS" value="true" /> |
|||
<envs> |
|||
<env name="PYTHONUNBUFFERED" value="1" /> |
|||
</envs> |
|||
<option name="SDK_HOME" value="" /> |
|||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" /> |
|||
<option name="IS_MODULE_SDK" value="true" /> |
|||
<option name="ADD_CONTENT_ROOTS" value="true" /> |
|||
<option name="ADD_SOURCE_ROOTS" value="true" /> |
|||
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/notepost.py" /> |
|||
<option name="PARAMETERS" value="" /> |
|||
<option name="SHOW_COMMAND_LINE" value="false" /> |
|||
<option name="EMULATE_TERMINAL" value="false" /> |
|||
<option name="MODULE_MODE" value="false" /> |
|||
<option name="REDIRECT_INPUT" value="false" /> |
|||
<option name="INPUT_FILE" value="" /> |
|||
<method v="2" /> |
|||
</configuration> |
|||
<recent_temporary> |
|||
<list> |
|||
<item itemvalue="Python.notepost" /> |
|||
</list> |
|||
</recent_temporary> |
|||
</component> |
|||
<component name="SvnConfiguration"> |
|||
<configuration /> |
|||
</component> |
|||
<component name="TaskManager"> |
|||
<task active="true" id="Default" summary="Default task"> |
|||
<changelist id="7e2ff7f2-75de-431f-9457-e0d648b65015" name="Default Changelist" comment="" /> |
|||
<created>1545952864862</created> |
|||
<option name="number" value="Default" /> |
|||
<option name="presentableId" value="Default" /> |
|||
<updated>1545952864862</updated> |
|||
</task> |
|||
<servers /> |
|||
</component> |
|||
<component name="ToolWindowManager"> |
|||
<frame x="0" y="0" width="1920" height="1042" extended-state="6" /> |
|||
<editor active="true" /> |
|||
<layout> |
|||
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.18028466" /> |
|||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" /> |
|||
<window_info id="Favorites" order="2" side_tool="true" /> |
|||
<window_info anchor="bottom" id="Message" order="0" /> |
|||
<window_info anchor="bottom" id="Find" order="1" /> |
|||
<window_info anchor="bottom" id="Run" order="2" weight="0.32932165" /> |
|||
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" /> |
|||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" /> |
|||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" /> |
|||
<window_info anchor="bottom" id="TODO" order="6" /> |
|||
<window_info anchor="bottom" id="Version Control" order="7" /> |
|||
<window_info anchor="bottom" id="Terminal" order="8" /> |
|||
<window_info anchor="bottom" id="Event Log" order="9" side_tool="true" /> |
|||
<window_info anchor="bottom" id="Python Console" order="10" /> |
|||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" /> |
|||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" /> |
|||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" /> |
|||
</layout> |
|||
</component> |
|||
<component name="editorHistoryManager"> |
|||
<entry file="file://$PROJECT_DIR$/notepost.py"> |
|||
<provider selected="true" editor-type-id="text-editor"> |
|||
<state relative-caret-position="240"> |
|||
<caret line="16" column="12" lean-forward="true" selection-start-line="16" selection-start-column="12" selection-end-line="16" selection-end-column="12" /> |
|||
<folding> |
|||
<element signature="e#23#42#0" expanded="true" /> |
|||
</folding> |
|||
</state> |
|||
</provider> |
|||
</entry> |
|||
</component> |
|||
</project> |
@ -0,0 +1,55 @@ |
|||
#!/usr/bin/env python3 |
|||
from os import read |
|||
|
|||
import i18n |
|||
import validators |
|||
import json |
|||
import requests |
|||
from pathlib import Path |
|||
from getpass import getpass |
|||
|
|||
CONFIG_FILE = "~/.config/notepostcli.json" |
|||
|
|||
|
|||
def checkconfig(): |
|||
config_path = Path(CONFIG_FILE) |
|||
if config_path.is_file(): |
|||
try: |
|||
# Attempt to read and parse the config file |
|||
config_file = open(CONFIG_FILE, 'r') |
|||
json.load(config_file) |
|||
return True |
|||
except Exception: |
|||
return False |
|||
else: |
|||
return False |
|||
|
|||
|
|||
def firstsetup(): |
|||
while True: |
|||
url = input(i18n.t("Server URL: ")) |
|||
if validators.url(url): |
|||
break |
|||
else: |
|||
print(i18n.t("That doesn't look right, try again.")) |
|||
while True: |
|||
username = input(i18n.t("Username: ")) |
|||
if username != "": |
|||
break |
|||
while True: |
|||
password = getpass(i18n.t("Password: ")) |
|||
if password != "": |
|||
break |
|||
|
|||
r = requests.post(url + "/api/ping", data = {"username": username, "password": password}) |
|||
print(r.json()) |
|||
|
|||
|
|||
def main(): |
|||
if not checkconfig(): |
|||
print(i18n.t("No valid settings file found, running setup wizard.")) |
|||
firstsetup() |
|||
|
|||
|
|||
if __name__ == "__main__": |
|||
main() |
Write
Preview
Loading…
Cancel
Save
Reference in new issue