Aaron Parecki
3bdafad98e
parse URLs with fragment IDs
If the input URL contains a fragment, finds the DOM tree at that ID and runs the subtree through the mf2 parser.
closes #15
7 years ago
Aaron Parecki
e0fd07731b
add robots.txt and favicon.ico to appengine config
7 years ago
Aaron Parecki
03a7598cf7
only output debug for fatal errors
7 years ago
Aaron Parecki
cf72540881
add blank robots.txt and favicon to avoid 404 errors
7 years ago
Aaron Parecki
1a1215c0be
attempt to catch fatal errors and print a nice message
7 years ago
Aaron Parecki
a7780fb671
set connect timeout
7 years ago
Aaron Parecki
c59ab9a2d6
also check img/video/audio for target URL
8 years ago
Aaron Parecki
ac32522c25
should always return 200
8 years ago
Aaron Parecki
565d50b862
add token fetching and authentication for posts
8 years ago
Aaron Parecki
0fde8190f5
copy production config to config.php
8 years ago
Aaron Parecki
62697ee46b
strict type checking on properties
8 years ago
Aaron Parecki
9006718ca5
add config option to enable caching
8 years ago
Aaron Parecki
1f6de10aba
add tests for validating URL fields
* fields that should be URLs will now be omitted if the value was not a URL, such as when the value is `javascript:alert()`
* makes Mf2 class slightly more self-contained by duplicating the URL helper functions into it
* fixes tests to not cache responses in memcache
8 years ago
Aaron Parecki
648a1e4e96
use released version of php-mf2 now that it is 0.3
8 years ago
Aaron Parecki
5672004535
remove url param since it was not used
8 years ago
Aaron Parecki
4a82561536
fix for h-event parsing
8 years ago
Aaron Parecki
1aa2f01d94
convert hostnames to lowercase
8 years ago
Aaron Parecki
bf6de4de06
only return HTTP 400 on client errors
errors fetching the URL should not result in a 400 response
8 years ago
Aaron Parecki
138cddd158
also return audio property
8 years ago
Aaron Parecki
3edc01d1b7
add test for invitee
8 years ago
Aaron Parecki
6de9be2567
parse h-event
closes #9
8 years ago
Aaron Parecki
abd37849ac
attempt to fix appengine warnings
8 years ago
Aaron Parecki
76c45a9e19
only use memcache if class exists
8 years ago
Aaron Parecki
262d9a66fa
cache the HTTP response
8 years ago
Aaron Parecki
ee5e48e1ef
if there is exactly one item and it's an h-entry, use that
8 years ago
Aaron Parecki
9054b0947c
specific error when there is no content at the URL
8 years ago
Aaron Parecki
1924d1000e
add log messages to debug which case a URL is hitting
8 years ago
Aaron Parecki
2d52b982cb
fix test data
8 years ago
Aaron Parecki
3d29776ae7
add a form to the home page to allow passing in HTML
8 years ago
Aaron Parecki
b7f49a7958
fix should follow redirects check
8 years ago
Aaron Parecki
8dc0caa4d0
use effective URL after following redirects when comparing URLs
8 years ago
Aaron Parecki
162d2f5ef8
add tests for feeds, catch case when a permalink has other h-entrys
8 years ago
Aaron Parecki
e3000f8c06
better blacklist for google URLs
8 years ago
Aaron Parecki
c4b80506da
support parsing posted HTML
8 years ago
Aaron Parecki
8d1489bb72
fix for target param. include bookmark-of property
8 years ago
Aaron Parecki
d1c6dc9268
add a test for rsvp
8 years ago
Aaron Parecki
4cb548fdfc
add test files illustrating a few different ways feeds (lists of posts) can appear
8 years ago
Aaron Parecki
075f78a6c1
parse h-entry even if it's not the first objet
8 years ago
Aaron Parecki
a202aa9c9a
tests for sanitizing and escaping HTML
use fork of php-mf2 until https://github.com/indieweb/php-mf2/pull/83 is merged
8 years ago
Aaron Parecki
d7672df96c
allow ul/li/ol
8 years ago
Aaron Parecki
e3ff109b37
restrict matching mf2 classes to only lowercase names
see http://microformats.org/wiki/microformats2-parsing-issues#ignore_u-camelCase_properties for background
8 years ago
Aaron Parecki
66a9b1cc9e
sanitize HTML in the entry
allow only a basic set of tags, and remove any non-mf2 classes
closes #2
8 years ago
Aaron Parecki
241594dcf5
sanitize HTML
sanitize the HTML returned in the content property. allows a common set of HTML tags.
for #2
8 years ago
Aaron Parecki
814df605b6
add query string param to pretty-print JSON output
8 years ago
Aaron Parecki
b9c9a6bddd
fix for author parsing
8 years ago
Aaron Parecki
ac6d86c0db
includes nested h-cite and other objects
if a property such as `in-reply-to` is an h-cite, the URL is still returned as the `in-reply-to` value, and the h-cite object is available in a different part of the response.
closes #6
8 years ago
Aaron Parecki
097e999768
return type=unknown instead of error=no_content
8 years ago
Aaron Parecki
ed88b4881b
use file_get_contents only for appengine URLs
8 years ago
Aaron Parecki
d853a52eb4
disable the timeout test for now
8 years ago
Aaron Parecki
e09ee58d8b
sometimes it returns "request failed"
file_get_contents is dumb. I hope this isn't a permanent solution.
8 years ago