Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion setup.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,7 +17,7 @@
'PyYAML >= 3.11',
'pycrypto >= 2.6.1',
'xmlsec >= 0.3.1',
'suds-jurko >= 0.7.dev0',
'suds-jurko >= 0.6',
'requests >= 2.8.1'

# Additionally requires LaTex if you pretend to use printing.
Expand Down
1 change: 1 addition & 0 deletions src/sii/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" CNS Common Library for SII stuff.
"""

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/exchange.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Document Exchange Tooling

TODO missing parametrizability
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Common Local Utilities.
"""
import re
Expand Down
13 changes: 8 additions & 5 deletions src/sii/lib/lib/fileio.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
""" Input/Output Functions.
"""
Input/Output Functions.
"""
import os
import shutil
Expand DownExpand Up@@ -39,14 +40,16 @@ def read_create(path, templ_path, encoding=None):

try:
shutil.copyfile(templ_path, path)
except FileNotFoundError as exc:
raise FileNotFoundError(
"Read/Create could not find or read template file at {0}".format(templ_path)
) from exc
except IOError as exc:
raise IOError(
"Read/Create could not find or read template file at {0}".format(
templ_path)
)

with open(path, 'r', encoding=encoding) as fh:
return fh.read()


def write(buff, path, encoding=None):
""" Normal write to file after path user expansion.

Expand Down
10 changes: 9 additions & 1 deletion src/sii/lib/lib/output.py
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
""" Common Output and Printing Utilities
"""
from itertools import zip_longest
from __future__ import print_function

import itertools
import sys

if sys.version_info < (3, 0):
zip_longest = itertools.izip_longest
else:
zip_longest = itertools.izip_longest

__all__ = [
'print_tabular',
Expand Down
8 changes: 4 additions & 4 deletions src/sii/lib/lib/xml.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,12 +70,12 @@ def __setattr__(self, name, value):

# private methods
if name.startswith('_'):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
return

# children to append
if isinstance(value, XML):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
self._node.append(value._node)
return

Expand All@@ -85,7 +85,7 @@ def __setattr__(self, name, value):
node._node.text = str(value)
except AttributeError:
node = XML(name=name, text=value)
super().__setattr__(attrname, node)
super(XML, self).__setattr__(attrname, node)
self._node.append(node._node)

def __getitem__(self, key):
Expand DownExpand Up@@ -223,7 +223,7 @@ def dump_xml(xml_node, **kwargs):
return buff


def print_xml(xml, file=sys.stdout.buffer, end='\n', encoding='UTF-8'):
def print_xml(xml, file=sys.stdout, end='\n', encoding='UTF-8'):
if isinstance(xml, XML):
xml = dump_etree(xml)

Expand Down
4 changes: 3 additions & 1 deletion src/sii/lib/printing/Document.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
""" Containing Document Structure
# -*- coding: utf-8 -*-
"""
Containing Document Structure
"""
from sii.lib.lib import xml

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionBarcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionDisclaimer.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Disclaimer Section of the Document (you might want to subclass this one)

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionEmitter.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Emitter Section of the Document

Contains:
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/printing/SectionItems.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Items Section of the Document

Contains:
Expand DownExpand Up@@ -72,7 +73,7 @@ def __init__(self, column_layout, table_margins=False, draft=False, provider=Fal
'%s', '%s', '%s', '%s', '%s'
)

def append_row(self, row: tuple):
def append_row(self, row):
""" Expecting the column tuple to be in the expected order the column layout was set up at
init time.
"""
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPayments.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Payments Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPreamble.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" LaTeX document configuration preamble
"""
import sys
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReceiver.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Receiver Section in the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReferences.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" References Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSignature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Signature Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSiiPatch.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Patch.

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionTotals.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Totals Section of the Document

Contains:
Expand Down
6 changes: 3 additions & 3 deletions src/sii/lib/printing/TemplateElement.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -25,19 +25,19 @@ def resources(self):
return []

@property
def carta(self) -> str:
def carta(self):
""" Create TeX Template for printable medium: "US Letter"
"""
raise NotImplementedError

@property
def oficio(self) -> str:
def oficio(self):
""" Create TeX Template for printable medium: "American Foolscap"
"""
raise NotImplementedError

@property
def thermal80mm(self) -> str:
def thermal80mm(self):
""" Create TeX Template for printable medium: "Thermal endless 80mm width"
"""
raise NotImplementedError
1 change: 1 addition & 0 deletions src/sii/lib/printing/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Templating and Printing Submodule.
"""
from .Document import Document
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/Barcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Creation (PDF417)
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/PDF417.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" PDF417 Barcode Generator.
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Generation for the SII Document Printing Submodule.
"""
from .PDF417 import PDF417
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Printing specific helpers.
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/printing.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Printable Template Generation and Printing
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/Seed.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Seed.
"""
import re
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/ptcl/Token.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Token.
"""
import re
Expand DownExpand Up@@ -47,7 +48,7 @@ def __init__(self, seed, key_path, cert_path, sii_host="https://palena.sii.cl/DT
self._token_etree = self._prepare_token_xml(self._token_xml)
self._token_values = self._parse_token_xml(self._token_etree)

def _build_token_request_xml(self, seed: str) -> str:
def _build_token_request_xml(self, seed):
"""
<getToken>
<item>
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Protocol Objects.
"""
from .Seed import Seed
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Protocol Helpers.
"""
import time
Expand Down
5 changes: 4 additions & 1 deletion src/sii/lib/schemas.py
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
""" Schema Providers.
"""
from datetime import datetime

import sys

from . import lib
from . import types

Expand DownExpand Up@@ -53,7 +56,7 @@ def resolve_schema(xml):
try:
path = SCHEMA_FILES[root.tag]
except KeyError as exc:
raise KeyError("Could not find schema for root tag '{0}'".format(root.tag)) from exc
raise KeyError("Error: {}\nCould not find schema for root tag '{0}'".format(exc, root.tag))
else:
return path

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/signature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signing Process Functions
"""
import xmlsec
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/stamping.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Creation and management of SII Digital Stamp Utilities
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/upload.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Documents Upload Utilities
"""
import requests
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/validation.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signature Verification Process Functions
"""
from io import BytesIO
Expand Down
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion setup.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,7 +17,7 @@
'PyYAML >= 3.11',
'pycrypto >= 2.6.1',
'xmlsec >= 0.3.1',
'suds-jurko >= 0.7.dev0',
'suds-jurko >= 0.6',
'requests >= 2.8.1'

# Additionally requires LaTex if you pretend to use printing.
Expand Down
1 change: 1 addition & 0 deletions src/sii/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" CNS Common Library for SII stuff.
"""

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/exchange.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Document Exchange Tooling

TODO missing parametrizability
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Common Local Utilities.
"""
import re
Expand Down
13 changes: 8 additions & 5 deletions src/sii/lib/lib/fileio.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
""" Input/Output Functions.
"""
Input/Output Functions.
"""
import os
import shutil
Expand DownExpand Up@@ -39,14 +40,16 @@ def read_create(path, templ_path, encoding=None):

try:
shutil.copyfile(templ_path, path)
except FileNotFoundError as exc:
raise FileNotFoundError(
"Read/Create could not find or read template file at {0}".format(templ_path)
) from exc
except IOError as exc:
raise IOError(
"Read/Create could not find or read template file at {0}".format(
templ_path)
)

with open(path, 'r', encoding=encoding) as fh:
return fh.read()


def write(buff, path, encoding=None):
""" Normal write to file after path user expansion.

Expand Down
10 changes: 9 additions & 1 deletion src/sii/lib/lib/output.py
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
""" Common Output and Printing Utilities
"""
from itertools import zip_longest
from __future__ import print_function

import itertools
import sys

if sys.version_info < (3, 0):
zip_longest = itertools.izip_longest
else:
zip_longest = itertools.izip_longest

__all__ = [
'print_tabular',
Expand Down
8 changes: 4 additions & 4 deletions src/sii/lib/lib/xml.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,12 +70,12 @@ def __setattr__(self, name, value):

# private methods
if name.startswith('_'):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
return

# children to append
if isinstance(value, XML):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
self._node.append(value._node)
return

Expand All@@ -85,7 +85,7 @@ def __setattr__(self, name, value):
node._node.text = str(value)
except AttributeError:
node = XML(name=name, text=value)
super().__setattr__(attrname, node)
super(XML, self).__setattr__(attrname, node)
self._node.append(node._node)

def __getitem__(self, key):
Expand DownExpand Up@@ -223,7 +223,7 @@ def dump_xml(xml_node, **kwargs):
return buff


def print_xml(xml, file=sys.stdout.buffer, end='\n', encoding='UTF-8'):
def print_xml(xml, file=sys.stdout, end='\n', encoding='UTF-8'):
if isinstance(xml, XML):
xml = dump_etree(xml)

Expand Down
4 changes: 3 additions & 1 deletion src/sii/lib/printing/Document.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
""" Containing Document Structure
# -*- coding: utf-8 -*-
"""
Containing Document Structure
"""
from sii.lib.lib import xml

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionBarcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionDisclaimer.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Disclaimer Section of the Document (you might want to subclass this one)

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionEmitter.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Emitter Section of the Document

Contains:
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/printing/SectionItems.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Items Section of the Document

Contains:
Expand DownExpand Up@@ -72,7 +73,7 @@ def __init__(self, column_layout, table_margins=False, draft=False, provider=Fal
'%s', '%s', '%s', '%s', '%s'
)

def append_row(self, row: tuple):
def append_row(self, row):
""" Expecting the column tuple to be in the expected order the column layout was set up at
init time.
"""
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPayments.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Payments Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPreamble.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" LaTeX document configuration preamble
"""
import sys
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReceiver.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Receiver Section in the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReferences.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" References Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSignature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Signature Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSiiPatch.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Patch.

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionTotals.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Totals Section of the Document

Contains:
Expand Down
6 changes: 3 additions & 3 deletions src/sii/lib/printing/TemplateElement.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -25,19 +25,19 @@ def resources(self):
return []

@property
def carta(self) -> str:
def carta(self):
""" Create TeX Template for printable medium: "US Letter"
"""
raise NotImplementedError

@property
def oficio(self) -> str:
def oficio(self):
""" Create TeX Template for printable medium: "American Foolscap"
"""
raise NotImplementedError

@property
def thermal80mm(self) -> str:
def thermal80mm(self):
""" Create TeX Template for printable medium: "Thermal endless 80mm width"
"""
raise NotImplementedError
1 change: 1 addition & 0 deletions src/sii/lib/printing/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Templating and Printing Submodule.
"""
from .Document import Document
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/Barcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Creation (PDF417)
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/PDF417.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" PDF417 Barcode Generator.
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Generation for the SII Document Printing Submodule.
"""
from .PDF417 import PDF417
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Printing specific helpers.
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/printing.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Printable Template Generation and Printing
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/Seed.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Seed.
"""
import re
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/ptcl/Token.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Token.
"""
import re
Expand DownExpand Up@@ -47,7 +48,7 @@ def __init__(self, seed, key_path, cert_path, sii_host="https://palena.sii.cl/DT
self._token_etree = self._prepare_token_xml(self._token_xml)
self._token_values = self._parse_token_xml(self._token_etree)

def _build_token_request_xml(self, seed: str) -> str:
def _build_token_request_xml(self, seed):
"""
<getToken>
<item>
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Protocol Objects.
"""
from .Seed import Seed
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Protocol Helpers.
"""
import time
Expand Down
5 changes: 4 additions & 1 deletion src/sii/lib/schemas.py
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
""" Schema Providers.
"""
from datetime import datetime

import sys

from . import lib
from . import types

Expand DownExpand Up@@ -53,7 +56,7 @@ def resolve_schema(xml):
try:
path = SCHEMA_FILES[root.tag]
except KeyError as exc:
raise KeyError("Could not find schema for root tag '{0}'".format(root.tag)) from exc
raise KeyError("Error: {}\nCould not find schema for root tag '{0}'".format(exc, root.tag))
else:
return path

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/signature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signing Process Functions
"""
import xmlsec
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/stamping.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Creation and management of SII Digital Stamp Utilities
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/upload.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Documents Upload Utilities
"""
import requests
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/validation.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signature Verification Process Functions
"""
from io import BytesIO
Expand Down
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion setup.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,7 +17,7 @@
'PyYAML >= 3.11',
'pycrypto >= 2.6.1',
'xmlsec >= 0.3.1',
'suds-jurko >= 0.7.dev0',
'suds-jurko >= 0.6',
'requests >= 2.8.1'

# Additionally requires LaTex if you pretend to use printing.
Expand Down
1 change: 1 addition & 0 deletions src/sii/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" CNS Common Library for SII stuff.
"""

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/exchange.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Document Exchange Tooling

TODO missing parametrizability
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Common Local Utilities.
"""
import re
Expand Down
13 changes: 8 additions & 5 deletions src/sii/lib/lib/fileio.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
""" Input/Output Functions.
"""
Input/Output Functions.
"""
import os
import shutil
Expand DownExpand Up@@ -39,14 +40,16 @@ def read_create(path, templ_path, encoding=None):

try:
shutil.copyfile(templ_path, path)
except FileNotFoundError as exc:
raise FileNotFoundError(
"Read/Create could not find or read template file at {0}".format(templ_path)
) from exc
except IOError as exc:
raise IOError(
"Read/Create could not find or read template file at {0}".format(
templ_path)
)

with open(path, 'r', encoding=encoding) as fh:
return fh.read()


def write(buff, path, encoding=None):
""" Normal write to file after path user expansion.

Expand Down
10 changes: 9 additions & 1 deletion src/sii/lib/lib/output.py
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
""" Common Output and Printing Utilities
"""
from itertools import zip_longest
from __future__ import print_function

import itertools
import sys

if sys.version_info < (3, 0):
zip_longest = itertools.izip_longest
else:
zip_longest = itertools.izip_longest

__all__ = [
'print_tabular',
Expand Down
8 changes: 4 additions & 4 deletions src/sii/lib/lib/xml.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,12 +70,12 @@ def __setattr__(self, name, value):

# private methods
if name.startswith('_'):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
return

# children to append
if isinstance(value, XML):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
self._node.append(value._node)
return

Expand All@@ -85,7 +85,7 @@ def __setattr__(self, name, value):
node._node.text = str(value)
except AttributeError:
node = XML(name=name, text=value)
super().__setattr__(attrname, node)
super(XML, self).__setattr__(attrname, node)
self._node.append(node._node)

def __getitem__(self, key):
Expand DownExpand Up@@ -223,7 +223,7 @@ def dump_xml(xml_node, **kwargs):
return buff


def print_xml(xml, file=sys.stdout.buffer, end='\n', encoding='UTF-8'):
def print_xml(xml, file=sys.stdout, end='\n', encoding='UTF-8'):
if isinstance(xml, XML):
xml = dump_etree(xml)

Expand Down
4 changes: 3 additions & 1 deletion src/sii/lib/printing/Document.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
""" Containing Document Structure
# -*- coding: utf-8 -*-
"""
Containing Document Structure
"""
from sii.lib.lib import xml

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionBarcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionDisclaimer.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Disclaimer Section of the Document (you might want to subclass this one)

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionEmitter.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Emitter Section of the Document

Contains:
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/printing/SectionItems.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Items Section of the Document

Contains:
Expand DownExpand Up@@ -72,7 +73,7 @@ def __init__(self, column_layout, table_margins=False, draft=False, provider=Fal
'%s', '%s', '%s', '%s', '%s'
)

def append_row(self, row: tuple):
def append_row(self, row):
""" Expecting the column tuple to be in the expected order the column layout was set up at
init time.
"""
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPayments.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Payments Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPreamble.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" LaTeX document configuration preamble
"""
import sys
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReceiver.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Receiver Section in the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReferences.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" References Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSignature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Signature Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSiiPatch.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Patch.

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionTotals.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Totals Section of the Document

Contains:
Expand Down
6 changes: 3 additions & 3 deletions src/sii/lib/printing/TemplateElement.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -25,19 +25,19 @@ def resources(self):
return []

@property
def carta(self) -> str:
def carta(self):
""" Create TeX Template for printable medium: "US Letter"
"""
raise NotImplementedError

@property
def oficio(self) -> str:
def oficio(self):
""" Create TeX Template for printable medium: "American Foolscap"
"""
raise NotImplementedError

@property
def thermal80mm(self) -> str:
def thermal80mm(self):
""" Create TeX Template for printable medium: "Thermal endless 80mm width"
"""
raise NotImplementedError
1 change: 1 addition & 0 deletions src/sii/lib/printing/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Templating and Printing Submodule.
"""
from .Document import Document
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/Barcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Creation (PDF417)
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/PDF417.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" PDF417 Barcode Generator.
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Generation for the SII Document Printing Submodule.
"""
from .PDF417 import PDF417
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Printing specific helpers.
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/printing.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Printable Template Generation and Printing
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/Seed.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Seed.
"""
import re
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/ptcl/Token.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Token.
"""
import re
Expand DownExpand Up@@ -47,7 +48,7 @@ def __init__(self, seed, key_path, cert_path, sii_host="https://palena.sii.cl/DT
self._token_etree = self._prepare_token_xml(self._token_xml)
self._token_values = self._parse_token_xml(self._token_etree)

def _build_token_request_xml(self, seed: str) -> str:
def _build_token_request_xml(self, seed):
"""
<getToken>
<item>
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Protocol Objects.
"""
from .Seed import Seed
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Protocol Helpers.
"""
import time
Expand Down
5 changes: 4 additions & 1 deletion src/sii/lib/schemas.py
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
""" Schema Providers.
"""
from datetime import datetime

import sys

from . import lib
from . import types

Expand DownExpand Up@@ -53,7 +56,7 @@ def resolve_schema(xml):
try:
path = SCHEMA_FILES[root.tag]
except KeyError as exc:
raise KeyError("Could not find schema for root tag '{0}'".format(root.tag)) from exc
raise KeyError("Error: {}\nCould not find schema for root tag '{0}'".format(exc, root.tag))
else:
return path

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/signature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signing Process Functions
"""
import xmlsec
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/stamping.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Creation and management of SII Digital Stamp Utilities
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/upload.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Documents Upload Utilities
"""
import requests
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/validation.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signature Verification Process Functions
"""
from io import BytesIO
Expand Down
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion setup.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,7 +17,7 @@
'PyYAML >= 3.11',
'pycrypto >= 2.6.1',
'xmlsec >= 0.3.1',
'suds-jurko >= 0.7.dev0',
'suds-jurko >= 0.6',
'requests >= 2.8.1'

# Additionally requires LaTex if you pretend to use printing.
Expand Down
1 change: 1 addition & 0 deletions src/sii/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" CNS Common Library for SII stuff.
"""

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/exchange.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Document Exchange Tooling

TODO missing parametrizability
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Common Local Utilities.
"""
import re
Expand Down
13 changes: 8 additions & 5 deletions src/sii/lib/lib/fileio.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
""" Input/Output Functions.
"""
Input/Output Functions.
"""
import os
import shutil
Expand DownExpand Up@@ -39,14 +40,16 @@ def read_create(path, templ_path, encoding=None):

try:
shutil.copyfile(templ_path, path)
except FileNotFoundError as exc:
raise FileNotFoundError(
"Read/Create could not find or read template file at {0}".format(templ_path)
) from exc
except IOError as exc:
raise IOError(
"Read/Create could not find or read template file at {0}".format(
templ_path)
)

with open(path, 'r', encoding=encoding) as fh:
return fh.read()


def write(buff, path, encoding=None):
""" Normal write to file after path user expansion.

Expand Down
10 changes: 9 additions & 1 deletion src/sii/lib/lib/output.py
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
""" Common Output and Printing Utilities
"""
from itertools import zip_longest
from __future__ import print_function

import itertools
import sys

if sys.version_info < (3, 0):
zip_longest = itertools.izip_longest
else:
zip_longest = itertools.izip_longest

__all__ = [
'print_tabular',
Expand Down
8 changes: 4 additions & 4 deletions src/sii/lib/lib/xml.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,12 +70,12 @@ def __setattr__(self, name, value):

# private methods
if name.startswith('_'):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
return

# children to append
if isinstance(value, XML):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
self._node.append(value._node)
return

Expand All@@ -85,7 +85,7 @@ def __setattr__(self, name, value):
node._node.text = str(value)
except AttributeError:
node = XML(name=name, text=value)
super().__setattr__(attrname, node)
super(XML, self).__setattr__(attrname, node)
self._node.append(node._node)

def __getitem__(self, key):
Expand DownExpand Up@@ -223,7 +223,7 @@ def dump_xml(xml_node, **kwargs):
return buff


def print_xml(xml, file=sys.stdout.buffer, end='\n', encoding='UTF-8'):
def print_xml(xml, file=sys.stdout, end='\n', encoding='UTF-8'):
if isinstance(xml, XML):
xml = dump_etree(xml)

Expand Down
4 changes: 3 additions & 1 deletion src/sii/lib/printing/Document.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
""" Containing Document Structure
# -*- coding: utf-8 -*-
"""
Containing Document Structure
"""
from sii.lib.lib import xml

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionBarcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionDisclaimer.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Disclaimer Section of the Document (you might want to subclass this one)

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionEmitter.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Emitter Section of the Document

Contains:
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/printing/SectionItems.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Items Section of the Document

Contains:
Expand DownExpand Up@@ -72,7 +73,7 @@ def __init__(self, column_layout, table_margins=False, draft=False, provider=Fal
'%s', '%s', '%s', '%s', '%s'
)

def append_row(self, row: tuple):
def append_row(self, row):
""" Expecting the column tuple to be in the expected order the column layout was set up at
init time.
"""
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPayments.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Payments Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPreamble.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" LaTeX document configuration preamble
"""
import sys
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReceiver.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Receiver Section in the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReferences.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" References Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSignature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Signature Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSiiPatch.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Patch.

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionTotals.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Totals Section of the Document

Contains:
Expand Down
6 changes: 3 additions & 3 deletions src/sii/lib/printing/TemplateElement.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -25,19 +25,19 @@ def resources(self):
return []

@property
def carta(self) -> str:
def carta(self):
""" Create TeX Template for printable medium: "US Letter"
"""
raise NotImplementedError

@property
def oficio(self) -> str:
def oficio(self):
""" Create TeX Template for printable medium: "American Foolscap"
"""
raise NotImplementedError

@property
def thermal80mm(self) -> str:
def thermal80mm(self):
""" Create TeX Template for printable medium: "Thermal endless 80mm width"
"""
raise NotImplementedError
1 change: 1 addition & 0 deletions src/sii/lib/printing/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Templating and Printing Submodule.
"""
from .Document import Document
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/Barcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Creation (PDF417)
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/PDF417.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" PDF417 Barcode Generator.
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Generation for the SII Document Printing Submodule.
"""
from .PDF417 import PDF417
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Printing specific helpers.
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/printing.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Printable Template Generation and Printing
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/Seed.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Seed.
"""
import re
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/ptcl/Token.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Token.
"""
import re
Expand DownExpand Up@@ -47,7 +48,7 @@ def __init__(self, seed, key_path, cert_path, sii_host="https://palena.sii.cl/DT
self._token_etree = self._prepare_token_xml(self._token_xml)
self._token_values = self._parse_token_xml(self._token_etree)

def _build_token_request_xml(self, seed: str) -> str:
def _build_token_request_xml(self, seed):
"""
<getToken>
<item>
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Protocol Objects.
"""
from .Seed import Seed
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Protocol Helpers.
"""
import time
Expand Down
5 changes: 4 additions & 1 deletion src/sii/lib/schemas.py
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
""" Schema Providers.
"""
from datetime import datetime

import sys

from . import lib
from . import types

Expand DownExpand Up@@ -53,7 +56,7 @@ def resolve_schema(xml):
try:
path = SCHEMA_FILES[root.tag]
except KeyError as exc:
raise KeyError("Could not find schema for root tag '{0}'".format(root.tag)) from exc
raise KeyError("Error: {}\nCould not find schema for root tag '{0}'".format(exc, root.tag))
else:
return path

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/signature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signing Process Functions
"""
import xmlsec
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/stamping.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Creation and management of SII Digital Stamp Utilities
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/upload.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Documents Upload Utilities
"""
import requests
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/validation.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signature Verification Process Functions
"""
from io import BytesIO
Expand Down
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion setup.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,7 +17,7 @@
'PyYAML >= 3.11',
'pycrypto >= 2.6.1',
'xmlsec >= 0.3.1',
'suds-jurko >= 0.7.dev0',
'suds-jurko >= 0.6',
'requests >= 2.8.1'

# Additionally requires LaTex if you pretend to use printing.
Expand Down
1 change: 1 addition & 0 deletions src/sii/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" CNS Common Library for SII stuff.
"""

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/exchange.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Document Exchange Tooling

TODO missing parametrizability
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Common Local Utilities.
"""
import re
Expand Down
13 changes: 8 additions & 5 deletions src/sii/lib/lib/fileio.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
""" Input/Output Functions.
"""
Input/Output Functions.
"""
import os
import shutil
Expand DownExpand Up@@ -39,14 +40,16 @@ def read_create(path, templ_path, encoding=None):

try:
shutil.copyfile(templ_path, path)
except FileNotFoundError as exc:
raise FileNotFoundError(
"Read/Create could not find or read template file at {0}".format(templ_path)
) from exc
except IOError as exc:
raise IOError(
"Read/Create could not find or read template file at {0}".format(
templ_path)
)

with open(path, 'r', encoding=encoding) as fh:
return fh.read()


def write(buff, path, encoding=None):
""" Normal write to file after path user expansion.

Expand Down
10 changes: 9 additions & 1 deletion src/sii/lib/lib/output.py
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
""" Common Output and Printing Utilities
"""
from itertools import zip_longest
from __future__ import print_function

import itertools
import sys

if sys.version_info < (3, 0):
zip_longest = itertools.izip_longest
else:
zip_longest = itertools.izip_longest

__all__ = [
'print_tabular',
Expand Down
8 changes: 4 additions & 4 deletions src/sii/lib/lib/xml.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,12 +70,12 @@ def __setattr__(self, name, value):

# private methods
if name.startswith('_'):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
return

# children to append
if isinstance(value, XML):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
self._node.append(value._node)
return

Expand All@@ -85,7 +85,7 @@ def __setattr__(self, name, value):
node._node.text = str(value)
except AttributeError:
node = XML(name=name, text=value)
super().__setattr__(attrname, node)
super(XML, self).__setattr__(attrname, node)
self._node.append(node._node)

def __getitem__(self, key):
Expand DownExpand Up@@ -223,7 +223,7 @@ def dump_xml(xml_node, **kwargs):
return buff


def print_xml(xml, file=sys.stdout.buffer, end='\n', encoding='UTF-8'):
def print_xml(xml, file=sys.stdout, end='\n', encoding='UTF-8'):
if isinstance(xml, XML):
xml = dump_etree(xml)

Expand Down
4 changes: 3 additions & 1 deletion src/sii/lib/printing/Document.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
""" Containing Document Structure
# -*- coding: utf-8 -*-
"""
Containing Document Structure
"""
from sii.lib.lib import xml

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionBarcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionDisclaimer.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Disclaimer Section of the Document (you might want to subclass this one)

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionEmitter.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Emitter Section of the Document

Contains:
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/printing/SectionItems.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Items Section of the Document

Contains:
Expand DownExpand Up@@ -72,7 +73,7 @@ def __init__(self, column_layout, table_margins=False, draft=False, provider=Fal
'%s', '%s', '%s', '%s', '%s'
)

def append_row(self, row: tuple):
def append_row(self, row):
""" Expecting the column tuple to be in the expected order the column layout was set up at
init time.
"""
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPayments.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Payments Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPreamble.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" LaTeX document configuration preamble
"""
import sys
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReceiver.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Receiver Section in the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReferences.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" References Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSignature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Signature Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSiiPatch.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Patch.

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionTotals.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Totals Section of the Document

Contains:
Expand Down
6 changes: 3 additions & 3 deletions src/sii/lib/printing/TemplateElement.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -25,19 +25,19 @@ def resources(self):
return []

@property
def carta(self) -> str:
def carta(self):
""" Create TeX Template for printable medium: "US Letter"
"""
raise NotImplementedError

@property
def oficio(self) -> str:
def oficio(self):
""" Create TeX Template for printable medium: "American Foolscap"
"""
raise NotImplementedError

@property
def thermal80mm(self) -> str:
def thermal80mm(self):
""" Create TeX Template for printable medium: "Thermal endless 80mm width"
"""
raise NotImplementedError
1 change: 1 addition & 0 deletions src/sii/lib/printing/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Templating and Printing Submodule.
"""
from .Document import Document
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/Barcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Creation (PDF417)
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/PDF417.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" PDF417 Barcode Generator.
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Generation for the SII Document Printing Submodule.
"""
from .PDF417 import PDF417
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Printing specific helpers.
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/printing.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Printable Template Generation and Printing
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/Seed.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Seed.
"""
import re
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/ptcl/Token.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Token.
"""
import re
Expand DownExpand Up@@ -47,7 +48,7 @@ def __init__(self, seed, key_path, cert_path, sii_host="https://palena.sii.cl/DT
self._token_etree = self._prepare_token_xml(self._token_xml)
self._token_values = self._parse_token_xml(self._token_etree)

def _build_token_request_xml(self, seed: str) -> str:
def _build_token_request_xml(self, seed):
"""
<getToken>
<item>
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Protocol Objects.
"""
from .Seed import Seed
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Protocol Helpers.
"""
import time
Expand Down
5 changes: 4 additions & 1 deletion src/sii/lib/schemas.py
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
""" Schema Providers.
"""
from datetime import datetime

import sys

from . import lib
from . import types

Expand DownExpand Up@@ -53,7 +56,7 @@ def resolve_schema(xml):
try:
path = SCHEMA_FILES[root.tag]
except KeyError as exc:
raise KeyError("Could not find schema for root tag '{0}'".format(root.tag)) from exc
raise KeyError("Error: {}\nCould not find schema for root tag '{0}'".format(exc, root.tag))
else:
return path

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/signature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signing Process Functions
"""
import xmlsec
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/stamping.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Creation and management of SII Digital Stamp Utilities
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/upload.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Documents Upload Utilities
"""
import requests
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/validation.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signature Verification Process Functions
"""
from io import BytesIO
Expand Down
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion setup.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,7 +17,7 @@
'PyYAML >= 3.11',
'pycrypto >= 2.6.1',
'xmlsec >= 0.3.1',
'suds-jurko >= 0.7.dev0',
'suds-jurko >= 0.6',
'requests >= 2.8.1'

# Additionally requires LaTex if you pretend to use printing.
Expand Down
1 change: 1 addition & 0 deletions src/sii/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" CNS Common Library for SII stuff.
"""

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/exchange.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Document Exchange Tooling

TODO missing parametrizability
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Common Local Utilities.
"""
import re
Expand Down
13 changes: 8 additions & 5 deletions src/sii/lib/lib/fileio.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
""" Input/Output Functions.
"""
Input/Output Functions.
"""
import os
import shutil
Expand DownExpand Up@@ -39,14 +40,16 @@ def read_create(path, templ_path, encoding=None):

try:
shutil.copyfile(templ_path, path)
except FileNotFoundError as exc:
raise FileNotFoundError(
"Read/Create could not find or read template file at {0}".format(templ_path)
) from exc
except IOError as exc:
raise IOError(
"Read/Create could not find or read template file at {0}".format(
templ_path)
)

with open(path, 'r', encoding=encoding) as fh:
return fh.read()


def write(buff, path, encoding=None):
""" Normal write to file after path user expansion.

Expand Down
10 changes: 9 additions & 1 deletion src/sii/lib/lib/output.py
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
""" Common Output and Printing Utilities
"""
from itertools import zip_longest
from __future__ import print_function

import itertools
import sys

if sys.version_info < (3, 0):
zip_longest = itertools.izip_longest
else:
zip_longest = itertools.izip_longest

__all__ = [
'print_tabular',
Expand Down
8 changes: 4 additions & 4 deletions src/sii/lib/lib/xml.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,12 +70,12 @@ def __setattr__(self, name, value):

# private methods
if name.startswith('_'):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
return

# children to append
if isinstance(value, XML):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
self._node.append(value._node)
return

Expand All@@ -85,7 +85,7 @@ def __setattr__(self, name, value):
node._node.text = str(value)
except AttributeError:
node = XML(name=name, text=value)
super().__setattr__(attrname, node)
super(XML, self).__setattr__(attrname, node)
self._node.append(node._node)

def __getitem__(self, key):
Expand DownExpand Up@@ -223,7 +223,7 @@ def dump_xml(xml_node, **kwargs):
return buff


def print_xml(xml, file=sys.stdout.buffer, end='\n', encoding='UTF-8'):
def print_xml(xml, file=sys.stdout, end='\n', encoding='UTF-8'):
if isinstance(xml, XML):
xml = dump_etree(xml)

Expand Down
4 changes: 3 additions & 1 deletion src/sii/lib/printing/Document.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
""" Containing Document Structure
# -*- coding: utf-8 -*-
"""
Containing Document Structure
"""
from sii.lib.lib import xml

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionBarcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionDisclaimer.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Disclaimer Section of the Document (you might want to subclass this one)

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionEmitter.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Emitter Section of the Document

Contains:
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/printing/SectionItems.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Items Section of the Document

Contains:
Expand DownExpand Up@@ -72,7 +73,7 @@ def __init__(self, column_layout, table_margins=False, draft=False, provider=Fal
'%s', '%s', '%s', '%s', '%s'
)

def append_row(self, row: tuple):
def append_row(self, row):
""" Expecting the column tuple to be in the expected order the column layout was set up at
init time.
"""
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPayments.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Payments Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPreamble.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" LaTeX document configuration preamble
"""
import sys
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReceiver.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Receiver Section in the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReferences.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" References Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSignature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Signature Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSiiPatch.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Patch.

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionTotals.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Totals Section of the Document

Contains:
Expand Down
6 changes: 3 additions & 3 deletions src/sii/lib/printing/TemplateElement.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -25,19 +25,19 @@ def resources(self):
return []

@property
def carta(self) -> str:
def carta(self):
""" Create TeX Template for printable medium: "US Letter"
"""
raise NotImplementedError

@property
def oficio(self) -> str:
def oficio(self):
""" Create TeX Template for printable medium: "American Foolscap"
"""
raise NotImplementedError

@property
def thermal80mm(self) -> str:
def thermal80mm(self):
""" Create TeX Template for printable medium: "Thermal endless 80mm width"
"""
raise NotImplementedError
1 change: 1 addition & 0 deletions src/sii/lib/printing/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Templating and Printing Submodule.
"""
from .Document import Document
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/Barcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Creation (PDF417)
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/PDF417.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" PDF417 Barcode Generator.
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Generation for the SII Document Printing Submodule.
"""
from .PDF417 import PDF417
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Printing specific helpers.
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/printing.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Printable Template Generation and Printing
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/Seed.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Seed.
"""
import re
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/ptcl/Token.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Token.
"""
import re
Expand DownExpand Up@@ -47,7 +48,7 @@ def __init__(self, seed, key_path, cert_path, sii_host="https://palena.sii.cl/DT
self._token_etree = self._prepare_token_xml(self._token_xml)
self._token_values = self._parse_token_xml(self._token_etree)

def _build_token_request_xml(self, seed: str) -> str:
def _build_token_request_xml(self, seed):
"""
<getToken>
<item>
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Protocol Objects.
"""
from .Seed import Seed
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Protocol Helpers.
"""
import time
Expand Down
5 changes: 4 additions & 1 deletion src/sii/lib/schemas.py
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
""" Schema Providers.
"""
from datetime import datetime

import sys

from . import lib
from . import types

Expand DownExpand Up@@ -53,7 +56,7 @@ def resolve_schema(xml):
try:
path = SCHEMA_FILES[root.tag]
except KeyError as exc:
raise KeyError("Could not find schema for root tag '{0}'".format(root.tag)) from exc
raise KeyError("Error: {}\nCould not find schema for root tag '{0}'".format(exc, root.tag))
else:
return path

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/signature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signing Process Functions
"""
import xmlsec
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/stamping.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Creation and management of SII Digital Stamp Utilities
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/upload.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Documents Upload Utilities
"""
import requests
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/validation.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signature Verification Process Functions
"""
from io import BytesIO
Expand Down
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion setup.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,7 +17,7 @@
'PyYAML >= 3.11',
'pycrypto >= 2.6.1',
'xmlsec >= 0.3.1',
'suds-jurko >= 0.7.dev0',
'suds-jurko >= 0.6',
'requests >= 2.8.1'

# Additionally requires LaTex if you pretend to use printing.
Expand Down
1 change: 1 addition & 0 deletions src/sii/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" CNS Common Library for SII stuff.
"""

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/exchange.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Document Exchange Tooling

TODO missing parametrizability
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Common Local Utilities.
"""
import re
Expand Down
13 changes: 8 additions & 5 deletions src/sii/lib/lib/fileio.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
""" Input/Output Functions.
"""
Input/Output Functions.
"""
import os
import shutil
Expand DownExpand Up@@ -39,14 +40,16 @@ def read_create(path, templ_path, encoding=None):

try:
shutil.copyfile(templ_path, path)
except FileNotFoundError as exc:
raise FileNotFoundError(
"Read/Create could not find or read template file at {0}".format(templ_path)
) from exc
except IOError as exc:
raise IOError(
"Read/Create could not find or read template file at {0}".format(
templ_path)
)

with open(path, 'r', encoding=encoding) as fh:
return fh.read()


def write(buff, path, encoding=None):
""" Normal write to file after path user expansion.

Expand Down
10 changes: 9 additions & 1 deletion src/sii/lib/lib/output.py
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
""" Common Output and Printing Utilities
"""
from itertools import zip_longest
from __future__ import print_function

import itertools
import sys

if sys.version_info < (3, 0):
zip_longest = itertools.izip_longest
else:
zip_longest = itertools.izip_longest

__all__ = [
'print_tabular',
Expand Down
8 changes: 4 additions & 4 deletions src/sii/lib/lib/xml.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,12 +70,12 @@ def __setattr__(self, name, value):

# private methods
if name.startswith('_'):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
return

# children to append
if isinstance(value, XML):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
self._node.append(value._node)
return

Expand All@@ -85,7 +85,7 @@ def __setattr__(self, name, value):
node._node.text = str(value)
except AttributeError:
node = XML(name=name, text=value)
super().__setattr__(attrname, node)
super(XML, self).__setattr__(attrname, node)
self._node.append(node._node)

def __getitem__(self, key):
Expand DownExpand Up@@ -223,7 +223,7 @@ def dump_xml(xml_node, **kwargs):
return buff


def print_xml(xml, file=sys.stdout.buffer, end='\n', encoding='UTF-8'):
def print_xml(xml, file=sys.stdout, end='\n', encoding='UTF-8'):
if isinstance(xml, XML):
xml = dump_etree(xml)

Expand Down
4 changes: 3 additions & 1 deletion src/sii/lib/printing/Document.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
""" Containing Document Structure
# -*- coding: utf-8 -*-
"""
Containing Document Structure
"""
from sii.lib.lib import xml

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionBarcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionDisclaimer.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Disclaimer Section of the Document (you might want to subclass this one)

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionEmitter.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Emitter Section of the Document

Contains:
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/printing/SectionItems.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Items Section of the Document

Contains:
Expand DownExpand Up@@ -72,7 +73,7 @@ def __init__(self, column_layout, table_margins=False, draft=False, provider=Fal
'%s', '%s', '%s', '%s', '%s'
)

def append_row(self, row: tuple):
def append_row(self, row):
""" Expecting the column tuple to be in the expected order the column layout was set up at
init time.
"""
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPayments.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Payments Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPreamble.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" LaTeX document configuration preamble
"""
import sys
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReceiver.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Receiver Section in the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReferences.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" References Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSignature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Signature Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSiiPatch.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Patch.

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionTotals.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Totals Section of the Document

Contains:
Expand Down
6 changes: 3 additions & 3 deletions src/sii/lib/printing/TemplateElement.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -25,19 +25,19 @@ def resources(self):
return []

@property
def carta(self) -> str:
def carta(self):
""" Create TeX Template for printable medium: "US Letter"
"""
raise NotImplementedError

@property
def oficio(self) -> str:
def oficio(self):
""" Create TeX Template for printable medium: "American Foolscap"
"""
raise NotImplementedError

@property
def thermal80mm(self) -> str:
def thermal80mm(self):
""" Create TeX Template for printable medium: "Thermal endless 80mm width"
"""
raise NotImplementedError
1 change: 1 addition & 0 deletions src/sii/lib/printing/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Templating and Printing Submodule.
"""
from .Document import Document
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/Barcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Creation (PDF417)
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/PDF417.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" PDF417 Barcode Generator.
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Generation for the SII Document Printing Submodule.
"""
from .PDF417 import PDF417
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Printing specific helpers.
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/printing.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Printable Template Generation and Printing
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/Seed.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Seed.
"""
import re
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/ptcl/Token.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Token.
"""
import re
Expand DownExpand Up@@ -47,7 +48,7 @@ def __init__(self, seed, key_path, cert_path, sii_host="https://palena.sii.cl/DT
self._token_etree = self._prepare_token_xml(self._token_xml)
self._token_values = self._parse_token_xml(self._token_etree)

def _build_token_request_xml(self, seed: str) -> str:
def _build_token_request_xml(self, seed):
"""
<getToken>
<item>
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Protocol Objects.
"""
from .Seed import Seed
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Protocol Helpers.
"""
import time
Expand Down
5 changes: 4 additions & 1 deletion src/sii/lib/schemas.py
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
""" Schema Providers.
"""
from datetime import datetime

import sys

from . import lib
from . import types

Expand DownExpand Up@@ -53,7 +56,7 @@ def resolve_schema(xml):
try:
path = SCHEMA_FILES[root.tag]
except KeyError as exc:
raise KeyError("Could not find schema for root tag '{0}'".format(root.tag)) from exc
raise KeyError("Error: {}\nCould not find schema for root tag '{0}'".format(exc, root.tag))
else:
return path

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/signature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signing Process Functions
"""
import xmlsec
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/stamping.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Creation and management of SII Digital Stamp Utilities
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/upload.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Documents Upload Utilities
"""
import requests
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/validation.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signature Verification Process Functions
"""
from io import BytesIO
Expand Down
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion setup.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,7 +17,7 @@
'PyYAML >= 3.11',
'pycrypto >= 2.6.1',
'xmlsec >= 0.3.1',
'suds-jurko >= 0.7.dev0',
'suds-jurko >= 0.6',
'requests >= 2.8.1'

# Additionally requires LaTex if you pretend to use printing.
Expand Down
1 change: 1 addition & 0 deletions src/sii/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" CNS Common Library for SII stuff.
"""

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/exchange.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Document Exchange Tooling

TODO missing parametrizability
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Common Local Utilities.
"""
import re
Expand Down
13 changes: 8 additions & 5 deletions src/sii/lib/lib/fileio.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
""" Input/Output Functions.
"""
Input/Output Functions.
"""
import os
import shutil
Expand DownExpand Up@@ -39,14 +40,16 @@ def read_create(path, templ_path, encoding=None):

try:
shutil.copyfile(templ_path, path)
except FileNotFoundError as exc:
raise FileNotFoundError(
"Read/Create could not find or read template file at {0}".format(templ_path)
) from exc
except IOError as exc:
raise IOError(
"Read/Create could not find or read template file at {0}".format(
templ_path)
)

with open(path, 'r', encoding=encoding) as fh:
return fh.read()


def write(buff, path, encoding=None):
""" Normal write to file after path user expansion.

Expand Down
10 changes: 9 additions & 1 deletion src/sii/lib/lib/output.py
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
""" Common Output and Printing Utilities
"""
from itertools import zip_longest
from __future__ import print_function

import itertools
import sys

if sys.version_info < (3, 0):
zip_longest = itertools.izip_longest
else:
zip_longest = itertools.izip_longest

__all__ = [
'print_tabular',
Expand Down
8 changes: 4 additions & 4 deletions src/sii/lib/lib/xml.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,12 +70,12 @@ def __setattr__(self, name, value):

# private methods
if name.startswith('_'):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
return

# children to append
if isinstance(value, XML):
super().__setattr__(attrname, value)
super(XML, self).__setattr__(attrname, value)
self._node.append(value._node)
return

Expand All@@ -85,7 +85,7 @@ def __setattr__(self, name, value):
node._node.text = str(value)
except AttributeError:
node = XML(name=name, text=value)
super().__setattr__(attrname, node)
super(XML, self).__setattr__(attrname, node)
self._node.append(node._node)

def __getitem__(self, key):
Expand DownExpand Up@@ -223,7 +223,7 @@ def dump_xml(xml_node, **kwargs):
return buff


def print_xml(xml, file=sys.stdout.buffer, end='\n', encoding='UTF-8'):
def print_xml(xml, file=sys.stdout, end='\n', encoding='UTF-8'):
if isinstance(xml, XML):
xml = dump_etree(xml)

Expand Down
4 changes: 3 additions & 1 deletion src/sii/lib/printing/Document.py
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
""" Containing Document Structure
# -*- coding: utf-8 -*-
"""
Containing Document Structure
"""
from sii.lib.lib import xml

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionBarcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionDisclaimer.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Disclaimer Section of the Document (you might want to subclass this one)

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionEmitter.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Emitter Section of the Document

Contains:
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/printing/SectionItems.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Items Section of the Document

Contains:
Expand DownExpand Up@@ -72,7 +73,7 @@ def __init__(self, column_layout, table_margins=False, draft=False, provider=Fal
'%s', '%s', '%s', '%s', '%s'
)

def append_row(self, row: tuple):
def append_row(self, row):
""" Expecting the column tuple to be in the expected order the column layout was set up at
init time.
"""
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPayments.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Payments Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionPreamble.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" LaTeX document configuration preamble
"""
import sys
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReceiver.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Receiver Section in the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionReferences.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" References Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSignature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Signature Section of the Document

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionSiiPatch.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Patch.

Contains:
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/SectionTotals.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Totals Section of the Document

Contains:
Expand Down
6 changes: 3 additions & 3 deletions src/sii/lib/printing/TemplateElement.py
Original file line numberDiff line numberDiff line change
Expand Up@@ -25,19 +25,19 @@ def resources(self):
return []

@property
def carta(self) -> str:
def carta(self):
""" Create TeX Template for printable medium: "US Letter"
"""
raise NotImplementedError

@property
def oficio(self) -> str:
def oficio(self):
""" Create TeX Template for printable medium: "American Foolscap"
"""
raise NotImplementedError

@property
def thermal80mm(self) -> str:
def thermal80mm(self):
""" Create TeX Template for printable medium: "Thermal endless 80mm width"
"""
raise NotImplementedError
1 change: 1 addition & 0 deletions src/sii/lib/printing/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Templating and Printing Submodule.
"""
from .Document import Document
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/Barcode.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Creation (PDF417)
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/PDF417.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" PDF417 Barcode Generator.
"""
import os
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/barcode/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Barcode Generation for the SII Document Printing Submodule.
"""
from .PDF417 import PDF417
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Printing specific helpers.
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/printing/printing.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Printable Template Generation and Printing
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/Seed.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Seed.
"""
import re
Expand Down
3 changes: 2 additions & 1 deletion src/sii/lib/ptcl/Token.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII WebService Authentication Token.
"""
import re
Expand DownExpand Up@@ -47,7 +48,7 @@ def __init__(self, seed, key_path, cert_path, sii_host="https://palena.sii.cl/DT
self._token_etree = self._prepare_token_xml(self._token_xml)
self._token_values = self._parse_token_xml(self._token_etree)

def _build_token_request_xml(self, seed: str) -> str:
def _build_token_request_xml(self, seed):
"""
<getToken>
<item>
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/__init__.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Protocol Objects.
"""
from .Seed import Seed
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/ptcl/helpers.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Protocol Helpers.
"""
import time
Expand Down
5 changes: 4 additions & 1 deletion src/sii/lib/schemas.py
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
""" Schema Providers.
"""
from datetime import datetime

import sys

from . import lib
from . import types

Expand DownExpand Up@@ -53,7 +56,7 @@ def resolve_schema(xml):
try:
path = SCHEMA_FILES[root.tag]
except KeyError as exc:
raise KeyError("Could not find schema for root tag '{0}'".format(root.tag)) from exc
raise KeyError("Error: {}\nCould not find schema for root tag '{0}'".format(exc, root.tag))
else:
return path

Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/signature.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signing Process Functions
"""
import xmlsec
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/stamping.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" Creation and management of SII Digital Stamp Utilities
"""
import re
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/upload.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Documents Upload Utilities
"""
import requests
Expand Down
1 change: 1 addition & 0 deletions src/sii/lib/validation.py
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
""" SII Document Signature Verification Process Functions
"""
from io import BytesIO
Expand Down