├── src ├── net │ ├── src │ │ ├── __init__.py │ │ ├── Test │ │ │ ├── __init__.py │ │ │ ├── testdata │ │ │ │ └── 1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original │ │ │ │ │ ├── data │ │ │ │ │ ├── optional.txt │ │ │ │ │ ├── img │ │ │ │ │ │ ├── domain.png │ │ │ │ │ │ ├── memory.png │ │ │ │ │ │ ├── slides.png │ │ │ │ │ │ ├── zeroid.png │ │ │ │ │ │ ├── trayicon.png │ │ │ │ │ │ ├── zeroname.png │ │ │ │ │ │ ├── zerotalk.png │ │ │ │ │ │ ├── autoupdate.png │ │ │ │ │ │ ├── multiuser.png │ │ │ │ │ │ ├── progressbar.png │ │ │ │ │ │ ├── slots_memory.png │ │ │ │ │ │ ├── zerotalk-mark.png │ │ │ │ │ │ ├── direct_domains.png │ │ │ │ │ │ ├── zerotalk-upvote.png │ │ │ │ │ │ └── zeroblog-comments.png │ │ │ │ │ ├── users │ │ │ │ │ │ ├── 1C5sgvWaSgfaTpV5kjBCnCiKtENNMYo69q │ │ │ │ │ │ │ ├── data.json │ │ │ │ │ │ │ └── content.json │ │ │ │ │ │ ├── 1CjfbrbwtP8Y2QjPy12vpTATkUT7oSiPQ9 │ │ │ │ │ │ │ ├── peanut-butter-jelly-time.gif │ │ │ │ │ │ │ └── data.json │ │ │ │ │ │ └── 1J6UrZMkarjVg5ax9W4qThir3BFUikbW6C │ │ │ │ │ │ │ ├── data.json │ │ │ │ │ │ │ └── content.json │ │ │ │ │ └── test_include │ │ │ │ │ │ ├── content.json │ │ │ │ │ │ └── data.json │ │ │ │ │ ├── img │ │ │ │ │ └── loading.gif │ │ │ │ │ └── data-default │ │ │ │ │ ├── data.json │ │ │ │ │ └── users │ │ │ │ │ └── content-default.json │ │ │ ├── pytest.ini │ │ │ ├── coverage.ini │ │ │ ├── Spy.py │ │ │ └── TestSiteStorage.py │ │ ├── lib │ │ │ ├── __init__.py │ │ │ ├── subtl │ │ │ │ ├── __init__.py │ │ │ │ └── README.md │ │ │ ├── BitcoinECC │ │ │ │ └── __init__.py │ │ │ ├── PySocks │ │ │ │ ├── __init__.py │ │ │ │ ├── test │ │ │ │ │ ├── mocks │ │ │ │ │ ├── README │ │ │ │ │ ├── socks4server.py │ │ │ │ │ └── test.sh │ │ │ │ └── setup.py │ │ │ ├── cssvendor │ │ │ │ └── __init__.py │ │ │ ├── opensslVerify │ │ │ │ ├── __init__.py │ │ │ │ ├── HashInfo.txt │ │ │ │ ├── libeay32.dll │ │ │ │ ├── openssl.exe │ │ │ │ ├── ssleay32.dll │ │ │ │ └── gencert.cmd │ │ │ ├── pybitcointools │ │ │ │ ├── __init__.py │ │ │ │ ├── MANIFEST.in │ │ │ │ ├── bitcoin │ │ │ │ │ └── __init__.py │ │ │ │ └── setup.py │ │ │ ├── geventwebsocket │ │ │ │ ├── gunicorn │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── workers.py │ │ │ │ ├── protocols │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── base.py │ │ │ │ ├── AUTHORS │ │ │ │ ├── exceptions.py │ │ │ │ ├── __init__.py │ │ │ │ ├── _compat.py │ │ │ │ └── LICENSE │ │ │ ├── pyasn1 │ │ │ │ ├── codec │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── ber │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ └── eoo.py │ │ │ │ │ ├── cer │ │ │ │ │ │ └── __init__.py │ │ │ │ │ ├── der │ │ │ │ │ │ └── __init__.py │ │ │ │ │ └── native │ │ │ │ │ │ └── __init__.py │ │ │ │ ├── type │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── error.py │ │ │ │ ├── compat │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── binary.py │ │ │ │ ├── THANKS │ │ │ │ ├── __init__.py │ │ │ │ └── error.py │ │ │ ├── bencode │ │ │ │ ├── __init__.py │ │ │ │ └── encode.py │ │ │ ├── pyelliptic │ │ │ │ └── __init__.py │ │ │ ├── rsa │ │ │ │ └── LICENSE │ │ │ └── merkletools │ │ │ │ └── setup.py │ │ ├── Crypt │ │ │ └── __init__.py │ │ ├── Plugin │ │ │ └── __init__.py │ │ ├── Translate │ │ │ └── __init__.py │ │ ├── User │ │ │ └── __init__.py │ │ ├── Tor │ │ │ └── __init__.py │ │ ├── Debug │ │ │ └── __init__.py │ │ ├── Content │ │ │ └── __init__.py │ │ ├── Peer │ │ │ └── __init__.py │ │ ├── File │ │ │ └── __init__.py │ │ ├── Worker │ │ │ └── __init__.py │ │ ├── Db │ │ │ └── __init__.py │ │ ├── Connection │ │ │ └── __init__.py │ │ ├── Ui │ │ │ ├── media │ │ │ │ ├── img │ │ │ │ │ ├── logo.psd │ │ │ │ │ ├── favicon.ico │ │ │ │ │ ├── favicon.psd │ │ │ │ │ ├── loading.gif │ │ │ │ │ └── loading-circle.gif │ │ │ │ ├── lib │ │ │ │ │ ├── RateLimit.coffee │ │ │ │ │ └── jquery.csslater.coffee │ │ │ │ └── WrapperZeroFrame.coffee │ │ │ └── __init__.py │ │ ├── util │ │ │ ├── __init__.py │ │ │ └── SocksProxy.py │ │ └── Site │ │ │ └── __init__.py │ ├── plugins │ │ ├── Trayicon │ │ │ ├── lib │ │ │ │ └── __init__.py │ │ │ ├── __init__.py │ │ │ ├── trayicon.ico │ │ │ └── languages │ │ │ │ ├── zh.json │ │ │ │ ├── zh-tw.json │ │ │ │ ├── tr.json │ │ │ │ ├── hu.json │ │ │ │ ├── es.json │ │ │ │ ├── pt-br.json │ │ │ │ ├── fr.json │ │ │ │ └── it.json │ │ ├── Chart │ │ │ └── __init__.py │ │ ├── Cors │ │ │ └── __init__.py │ │ ├── Mute │ │ │ ├── __init__.py │ │ │ └── languages │ │ │ │ ├── zh.json │ │ │ │ ├── zh-tw.json │ │ │ │ ├── es.json │ │ │ │ ├── pt-br.json │ │ │ │ ├── hu.json │ │ │ │ └── it.json │ │ ├── Stats │ │ │ └── __init__.py │ │ ├── FilePack │ │ │ └── __init__.py │ │ ├── Newsfeed │ │ │ └── __init__.py │ │ ├── Sidebar │ │ │ ├── __init__.py │ │ │ ├── media-globe │ │ │ │ └── world.jpg │ │ │ ├── maxminddb │ │ │ │ ├── const.py │ │ │ │ ├── errors.py │ │ │ │ └── compat.py │ │ │ └── media │ │ │ │ ├── RateLimit.coffee │ │ │ │ └── Class.coffee │ │ ├── MergerSite │ │ │ ├── __init__.py │ │ │ └── languages │ │ │ │ ├── zh.json │ │ │ │ ├── zh-tw.json │ │ │ │ ├── fr.json │ │ │ │ ├── tr.json │ │ │ │ ├── es.json │ │ │ │ ├── hu.json │ │ │ │ ├── it.json │ │ │ │ └── pt-br.json │ │ ├── PeerDb │ │ │ └── __init__.py │ │ ├── disabled-Zeroname-local │ │ │ ├── bitcoinrpc │ │ │ │ └── __init__.py │ │ │ └── __init__.py │ │ ├── AnnounceLocal │ │ │ ├── __init__.py │ │ │ └── Test │ │ │ │ ├── conftest.py │ │ │ │ └── pytest.ini │ │ ├── AnnounceZero │ │ │ └── __init__.py │ │ ├── CryptMessage │ │ │ ├── __init__.py │ │ │ └── Test │ │ │ │ ├── conftest.py │ │ │ │ └── pytest.ini │ │ ├── BigFile │ │ │ ├── Test │ │ │ │ ├── conftest.py │ │ │ │ └── pytest.ini │ │ │ └── __init__.py │ │ ├── OptionalManager │ │ │ ├── __init__.py │ │ │ ├── Test │ │ │ │ ├── conftest.py │ │ │ │ └── pytest.ini │ │ │ └── languages │ │ │ │ ├── zh-tw.json │ │ │ │ ├── zh.json │ │ │ │ ├── hu.json │ │ │ │ ├── fr.json │ │ │ │ ├── pt-br.json │ │ │ │ └── es.json │ │ ├── TranslateSite │ │ │ └── __init__.py │ │ ├── disabled-Multiuser │ │ │ └── __init__.py │ │ ├── disabled-UiPassword │ │ │ └── __init__.py │ │ ├── disabled-Bootstrapper │ │ │ ├── __init__.py │ │ │ └── Test │ │ │ │ ├── conftest.py │ │ │ │ └── pytest.ini │ │ ├── Zeroname │ │ │ └── __init__.py │ │ ├── disabled-DonationMessage │ │ │ └── __init__.py │ │ ├── disabled-Dnschain │ │ │ └── __init__.py │ │ └── disabled-StemPort │ │ │ └── __init__.py │ ├── tools │ │ ├── tor │ │ │ ├── start.cmd │ │ │ └── torrc │ │ └── coffee │ │ │ └── coffee.cmd │ ├── requirements.txt │ ├── start.py │ ├── .gitignore │ ├── .github │ │ └── ISSUE_TEMPLATE.md │ └── Dockerfile ├── huginn │ ├── VERSION │ ├── .ruby-gemset │ ├── deployment │ │ ├── nodes │ │ │ └── .gitignore │ │ ├── site-cookbooks │ │ │ └── huginn_production │ │ │ │ └── files │ │ │ │ └── default │ │ │ │ └── Procfile │ │ ├── solo.rb │ │ ├── Cheffile │ │ └── roles │ │ │ ├── huginn_development.json │ │ │ └── huginn_production.json │ ├── vendor │ │ ├── plugins │ │ │ └── .gitkeep │ │ └── assets │ │ │ └── images │ │ │ ├── json-editor │ │ │ ├── add.png │ │ │ └── delete.png │ │ │ ├── glyphicons-halflings.png │ │ │ └── glyphicons-halflings-white.png │ ├── .ruby-version │ ├── config │ │ ├── initializers │ │ │ ├── requires.rb │ │ │ ├── aws.rb │ │ │ ├── mime_types.rb │ │ │ ├── delayed_job.rb │ │ │ ├── secret_token.rb │ │ │ ├── backtrace_silencers.rb │ │ │ ├── session_store.rb │ │ │ ├── wrap_parameters.rb │ │ │ ├── inflections.rb │ │ │ └── action_mailer.rb │ │ ├── boot.rb │ │ └── environment.rb │ ├── Capfile │ ├── app │ │ ├── helpers │ │ │ ├── logs_helper.rb │ │ │ ├── agent_helper.rb │ │ │ └── application_helper.rb │ │ ├── assets │ │ │ ├── images │ │ │ │ ├── odin.jpg │ │ │ │ └── spinner-arrows.gif │ │ │ └── javascripts │ │ │ │ └── user_credentials.js.coffee │ │ ├── views │ │ │ ├── home │ │ │ │ ├── index.html.erb │ │ │ │ ├── about.html.erb │ │ │ │ └── _signed_out_index.html.erb │ │ │ ├── system_mailer │ │ │ │ ├── send_message.text.erb │ │ │ │ └── send_message.html.erb │ │ │ ├── devise │ │ │ │ ├── mailer │ │ │ │ │ ├── confirmation_instructions.html.erb │ │ │ │ │ ├── unlock_instructions.html.erb │ │ │ │ │ └── reset_password_instructions.html.erb │ │ │ │ └── unlocks │ │ │ │ │ └── new.html.erb │ │ │ ├── layouts │ │ │ │ └── _messages.html.erb │ │ │ ├── user_credentials │ │ │ │ ├── edit.html.erb │ │ │ │ └── new.html.erb │ │ │ └── agents │ │ │ │ ├── new.html.erb │ │ │ │ └── edit.html.erb │ │ ├── controllers │ │ │ ├── application_controller.rb │ │ │ ├── home_controller.rb │ │ │ ├── logs_controller.rb │ │ │ ├── worker_status_controller.rb │ │ │ └── user_location_updates_controller.rb │ │ ├── mailers │ │ │ └── system_mailer.rb │ │ ├── models │ │ │ ├── link.rb │ │ │ ├── contact.rb │ │ │ ├── user_credential.rb │ │ │ └── agents │ │ │ │ └── manual_event_agent.rb │ │ └── concerns │ │ │ └── weibo_concern.rb │ ├── doc │ │ ├── imgs │ │ │ ├── peaks.png │ │ │ ├── diagram.png │ │ │ ├── new-agent.png │ │ │ ├── the-name.png │ │ │ ├── your-agents.png │ │ │ └── my-locations.png │ │ └── deployment │ │ │ └── unicorn │ │ │ └── production.rb │ ├── public │ │ ├── favicon.ico │ │ ├── robots.txt │ │ ├── 500.html │ │ ├── 422.html │ │ └── 404.html │ ├── db │ │ └── migrate │ │ │ ├── 20130124050117_add_indexes.rb │ │ │ ├── 20121231170705_add_memory_to_agents.rb │ │ │ ├── 20130509053743_add_last_webhook_at_to_agents.rb │ │ │ ├── 20120728215449_add_admin_to_users.rb │ │ │ ├── 20130107050049_add_invitation_code_to_users.rb │ │ │ ├── 20131105063248_add_expires_at_to_events.rb │ │ │ ├── 20131222211558_add_keep_events_for_to_agents.rb │ │ │ ├── 20140210062747_add_mode_to_user_credentials.rb │ │ │ ├── 20121222074732_create_links.rb │ │ │ ├── 20140216201250_add_propagate_immediately_to_agent.rb │ │ │ ├── 20130819160603_create_agent_logs.rb │ │ │ ├── 20140121075418_create_user_credentials.rb │ │ │ ├── 20121216025930_create_events.rb │ │ │ ├── 20120919061122_enable_lockable_strategy_for_devise.rb │ │ │ ├── 20120919063304_add_username_to_users.rb │ │ │ ├── 20140127164931_change_handler_to_medium_text.rb │ │ │ ├── 20121220053905_create_agents.rb │ │ │ ├── 20131227000021_add_cached_dates_to_agent.rb │ │ │ ├── 20130126080736_change_memory_to_long_text.rb │ │ │ └── 20140213053001_add_event_id_at_creation_to_links.rb │ ├── script │ │ ├── delayed_job │ │ └── rails │ ├── spec │ │ ├── fixtures │ │ │ ├── links.yml │ │ │ ├── events.yml │ │ │ ├── users.yml │ │ │ ├── agent_logs.yml │ │ │ └── user_credentials.yml │ │ ├── support │ │ │ └── spec_helpers.rb │ │ ├── lib │ │ │ └── inheritance_tracking_spec.rb │ │ ├── models │ │ │ ├── users_spec.rb │ │ │ └── agents │ │ │ │ ├── weibo_user_agent_spec.rb │ │ │ │ └── twitter_user_agent_spec.rb │ │ └── data_fixtures │ │ │ └── adioso_parse.json │ ├── lib │ │ ├── json_with_indifferent_access.rb │ │ └── inheritance_tracking.rb │ ├── Rakefile │ ├── config.ru │ ├── .gitignore │ ├── Procfile │ ├── bin │ │ └── decrypt_backup.rb │ └── .travis.yml ├── shaarli │ ├── shaarli_version.php │ ├── plugins │ │ ├── pubsubhubbub │ │ │ ├── hub.atom.xml │ │ │ ├── hub.rss.xml │ │ │ ├── pubsubhubbub.meta │ │ │ └── README.md │ │ ├── default_colors │ │ │ ├── default_colors.css.template │ │ │ └── default_colors.meta │ │ ├── isso │ │ │ ├── isso.css │ │ │ ├── comment.png │ │ │ ├── isso.meta │ │ │ └── isso.html │ │ ├── qrcode │ │ │ ├── qrcode.meta │ │ │ ├── qrcode.png │ │ │ ├── qrcode.html │ │ │ └── qrcode.css │ │ ├── archiveorg │ │ │ ├── archiveorg.meta │ │ │ ├── internetarchive.png │ │ │ └── archiveorg.html │ │ ├── demo_plugin │ │ │ ├── demo_plugin.js │ │ │ ├── field.html │ │ │ ├── languages │ │ │ │ └── fr │ │ │ │ │ └── LC_MESSAGES │ │ │ │ │ ├── demo.mo │ │ │ │ │ └── demo.po │ │ │ ├── custom_demo.css │ │ │ ├── demo_plugin.meta │ │ │ └── DemoPluginController.php │ │ ├── addlink_toolbar │ │ │ └── addlink_toolbar.meta │ │ ├── playvideos │ │ │ └── playvideos.meta │ │ ├── wallabag │ │ │ ├── wallabag.png │ │ │ ├── wallabag.html │ │ │ └── wallabag.meta │ │ ├── readitlater │ │ │ ├── readitlater_button.html │ │ │ ├── readitlater_editlink.html │ │ │ ├── readitlater.meta │ │ │ ├── readitlater.default.css │ │ │ └── readitlater.default.js │ │ └── piwik │ │ │ └── piwik.meta │ ├── doc │ │ └── md │ │ │ ├── images │ │ │ ├── icon.png │ │ │ ├── logo.png │ │ │ ├── doc-logo.png │ │ │ ├── edit_icon.png │ │ │ ├── rss-filter-1.png │ │ │ ├── rss-filter-2.png │ │ │ └── 07-installation.jpg │ │ │ ├── dev │ │ │ ├── images │ │ │ │ └── poedit-1.jpg │ │ │ └── Release-Shaarli.md.rej │ │ │ ├── Browsing-and-searching.md.rej │ │ │ └── Download-and-Installation.md.rej │ ├── assets │ │ ├── vintage │ │ │ └── img │ │ │ │ ├── logo.png │ │ │ │ ├── calendar.png │ │ │ │ ├── favicon.ico │ │ │ │ ├── private.png │ │ │ │ ├── squiggle.png │ │ │ │ ├── tag_blue.png │ │ │ │ ├── edit_icon.png │ │ │ │ ├── delete_icon.png │ │ │ │ ├── floral_left.png │ │ │ │ ├── floral_right.png │ │ │ │ ├── private_16x16.png │ │ │ │ ├── feed-icon-14x14.png │ │ │ │ ├── 50pc_transparent.png │ │ │ │ ├── squiggle_closing.png │ │ │ │ ├── private_16x16_active.png │ │ │ │ └── Paper_texture_v5_by_bashcorpo_w1000.jpg │ │ ├── default │ │ │ ├── img │ │ │ │ ├── favicon.png │ │ │ │ ├── sad_star.png │ │ │ │ └── apple-touch-icon.png │ │ │ └── fonts │ │ │ │ ├── Roboto-Bold.woff │ │ │ │ ├── Roboto-Bold.woff2 │ │ │ │ ├── Roboto-Regular.woff │ │ │ │ └── Roboto-Regular.woff2 │ │ ├── common │ │ │ └── js │ │ │ │ └── thumbnails.js │ │ └── .htaccess │ ├── application │ │ ├── bookmark │ │ │ ├── exception │ │ │ │ ├── EmptyDataStoreException.php │ │ │ │ ├── DatastoreNotInitializedException.php │ │ │ │ ├── NotEnoughSpaceException.php │ │ │ │ ├── BookmarkNotFoundException.php │ │ │ │ ├── InvalidWritableDataException.php │ │ │ │ └── NotWritableDataStoreException.php │ │ │ └── LinkDB.php.rej │ │ ├── legacy │ │ │ ├── UnknowLegacyRouteException.php │ │ │ └── LegacyLinkDB.php.rej │ │ ├── front │ │ │ ├── exceptions │ │ │ │ ├── CantLoginException.php │ │ │ │ ├── ResourcePermissionException.php │ │ │ │ ├── UnauthorizedException.php │ │ │ │ ├── ThumbnailsDisabledException.php │ │ │ │ ├── LoginBannedException.php │ │ │ │ ├── AlreadyInstalledException.php │ │ │ │ ├── WrongTokenException.php │ │ │ │ ├── OpenShaarliPasswordException.php │ │ │ │ └── ShaarliFrontException.php │ │ │ └── controller │ │ │ │ ├── visitor │ │ │ │ ├── BookmarkListController.php.rej │ │ │ │ ├── DailyController.php.rej │ │ │ │ └── OpenSearchController.php │ │ │ │ └── admin │ │ │ │ └── TokenController.php │ │ ├── .htaccess │ │ ├── Languages.php.rej │ │ ├── formatter │ │ │ ├── Parsedown │ │ │ │ ├── ShaarliParsedown.php │ │ │ │ └── ShaarliParsedownExtra.php │ │ │ ├── BookmarkRawFormatter.php │ │ │ ├── BookmarkDefaultFormatter.php.rej │ │ │ └── BookmarkMarkdownExtraFormatter.php │ │ ├── plugin │ │ │ ├── PluginManager.php.rej │ │ │ └── exception │ │ │ │ ├── PluginFileNotFoundException.php │ │ │ │ └── PluginInvalidRouteException.php │ │ ├── api │ │ │ └── exceptions │ │ │ │ ├── ApiInternalException.php │ │ │ │ ├── ApiBadParametersException.php │ │ │ │ ├── ApiLinkNotFoundException.php │ │ │ │ └── ApiTagNotFoundException.php │ │ ├── config │ │ │ ├── exception │ │ │ │ ├── UnauthorizedConfigException.php │ │ │ │ ├── PluginConfigOrderException.php │ │ │ │ └── MissingFieldConfigException.php │ │ │ ├── ConfigManager.php.rej │ │ │ └── ConfigIO.php │ │ ├── Updater.php.rej │ │ ├── updater │ │ │ └── Updater.php.rej │ │ ├── HttpUtils.php.rej │ │ ├── netscape │ │ │ └── NetscapeBookmarkUtils.php.rej │ │ ├── PageBuilder.php.rej │ │ ├── exceptions │ │ │ └── IOException.php │ │ ├── render │ │ │ └── ThemeUtils.php │ │ ├── http │ │ │ └── Base64Url.php │ │ └── security │ │ │ └── CookieManager.php │ ├── tpl │ │ ├── vintage │ │ │ ├── page.html │ │ │ ├── 404.html │ │ │ ├── changetag.html.rej │ │ │ ├── editlink.html.rej │ │ │ ├── addlink.html │ │ │ ├── error.html │ │ │ ├── picwall.html.rej │ │ │ ├── page.footer.html.rej │ │ │ ├── changepassword.html │ │ │ ├── tools.html.rej │ │ │ ├── export.bookmarks.html │ │ │ └── thumbnails.html │ │ └── default │ │ │ ├── pluginscontent.html │ │ │ ├── linklist.html.rej │ │ │ ├── tag.sort.html │ │ │ ├── picwall.html.rej │ │ │ ├── pluginsadmin.html.rej │ │ │ ├── page.footer.html.rej │ │ │ ├── 404.html │ │ │ ├── error.html │ │ │ ├── js │ │ │ └── shaarli.js.rej │ │ │ └── export.bookmarks.html │ ├── .gitignore.rej │ ├── inc │ │ └── web-thumbnailer.json │ ├── tmp │ │ └── .htaccess │ ├── .editorconfig.rej │ ├── cache │ │ └── .htaccess │ ├── pagecache │ │ └── .htaccess │ ├── data │ │ └── .htaccess │ ├── .readthedocs.yml │ ├── phpdoc.dist.xml │ ├── phpcs.xml.rej │ ├── .travis.yml.rej │ └── index.php.rej └── patch │ └── eosio │ └── public_key.cpp ├── README.md ├── include ├── object.h └── types.h ├── tools ├── gitinfo.h.in ├── config.h.in ├── subdirs.cmake └── ildc.js ├── .gitignore ├── .gitmodules ├── installer.txt └── .vscode ├── settings.json └── tasks.json /src/net/src/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Datamall chain -------------------------------------------------------------------------------- /src/huginn/VERSION: -------------------------------------------------------------------------------- 1 | 0.3 2 | -------------------------------------------------------------------------------- /src/net/src/Test/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/lib/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/Crypt/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/Plugin/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/lib/subtl/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/huginn/.ruby-gemset: -------------------------------------------------------------------------------- 1 | huginn 2 | -------------------------------------------------------------------------------- /src/huginn/deployment/nodes/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/huginn/vendor/plugins/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/lib/BitcoinECC/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/lib/PySocks/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/lib/cssvendor/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/lib/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/lib/opensslVerify/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/lib/pybitcointools/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/tools/tor/start.cmd: -------------------------------------------------------------------------------- 1 | tor.exe -f torrc -------------------------------------------------------------------------------- /src/huginn/.ruby-version: -------------------------------------------------------------------------------- 1 | ruby-1.9.3-p484 2 | -------------------------------------------------------------------------------- /include/object.h: -------------------------------------------------------------------------------- 1 | #include "../fibjs/include/object.h" -------------------------------------------------------------------------------- /src/net/plugins/Chart/__init__.py: -------------------------------------------------------------------------------- 1 | import ChartPlugin -------------------------------------------------------------------------------- /src/net/plugins/Cors/__init__.py: -------------------------------------------------------------------------------- 1 | import CorsPlugin -------------------------------------------------------------------------------- /src/net/plugins/Mute/__init__.py: -------------------------------------------------------------------------------- 1 | import MutePlugin -------------------------------------------------------------------------------- /src/net/plugins/Stats/__init__.py: -------------------------------------------------------------------------------- 1 | import StatsPlugin -------------------------------------------------------------------------------- /src/net/src/lib/geventwebsocket/gunicorn/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/src/lib/geventwebsocket/protocols/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/huginn/config/initializers/requires.rb: -------------------------------------------------------------------------------- 1 | require 'pp' -------------------------------------------------------------------------------- /src/net/plugins/FilePack/__init__.py: -------------------------------------------------------------------------------- 1 | import FilePackPlugin -------------------------------------------------------------------------------- /src/net/plugins/Newsfeed/__init__.py: -------------------------------------------------------------------------------- 1 | import NewsfeedPlugin -------------------------------------------------------------------------------- /src/net/plugins/Sidebar/__init__.py: -------------------------------------------------------------------------------- 1 | import SidebarPlugin -------------------------------------------------------------------------------- /src/net/src/Translate/__init__.py: -------------------------------------------------------------------------------- 1 | from Translate import * -------------------------------------------------------------------------------- /src/net/src/User/__init__.py: -------------------------------------------------------------------------------- 1 | from User import User 2 | -------------------------------------------------------------------------------- /src/shaarli/shaarli_version.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tools/gitinfo.h.in: -------------------------------------------------------------------------------- 1 | 2 | #cmakedefine GIT_INFO "@GIT_INFO@" -------------------------------------------------------------------------------- /src/huginn/Capfile: -------------------------------------------------------------------------------- 1 | load 'deploy' 2 | load 'config/deploy' 3 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/__init__.py: -------------------------------------------------------------------------------- 1 | import MergerSitePlugin -------------------------------------------------------------------------------- /src/net/plugins/PeerDb/__init__.py: -------------------------------------------------------------------------------- 1 | import PeerDbPlugin 2 | 3 | -------------------------------------------------------------------------------- /src/net/plugins/disabled-Zeroname-local/bitcoinrpc/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/requirements.txt: -------------------------------------------------------------------------------- 1 | gevent>=1.1.0 2 | msgpack>=0.4.4 3 | -------------------------------------------------------------------------------- /src/net/src/Tor/__init__.py: -------------------------------------------------------------------------------- 1 | from TorManager import TorManager -------------------------------------------------------------------------------- /src/huginn/app/helpers/logs_helper.rb: -------------------------------------------------------------------------------- 1 | module LogsHelper 2 | end 3 | -------------------------------------------------------------------------------- /src/net/plugins/AnnounceLocal/__init__.py: -------------------------------------------------------------------------------- 1 | import AnnounceLocalPlugin -------------------------------------------------------------------------------- /src/net/plugins/AnnounceZero/__init__.py: -------------------------------------------------------------------------------- 1 | import AnnounceZeroPlugin -------------------------------------------------------------------------------- /src/net/plugins/CryptMessage/__init__.py: -------------------------------------------------------------------------------- 1 | import CryptMessagePlugin -------------------------------------------------------------------------------- /src/net/src/Debug/__init__.py: -------------------------------------------------------------------------------- 1 | from DebugReloader import DebugReloader -------------------------------------------------------------------------------- /src/net/plugins/BigFile/Test/conftest.py: -------------------------------------------------------------------------------- 1 | from src.Test.conftest import * -------------------------------------------------------------------------------- /src/net/plugins/OptionalManager/__init__.py: -------------------------------------------------------------------------------- 1 | import OptionalManagerPlugin -------------------------------------------------------------------------------- /src/net/plugins/TranslateSite/__init__.py: -------------------------------------------------------------------------------- 1 | import TranslateSitePlugin 2 | -------------------------------------------------------------------------------- /src/net/plugins/disabled-Multiuser/__init__.py: -------------------------------------------------------------------------------- 1 | import MultiuserPlugin 2 | -------------------------------------------------------------------------------- /src/net/plugins/disabled-UiPassword/__init__.py: -------------------------------------------------------------------------------- 1 | import UiPasswordPlugin -------------------------------------------------------------------------------- /src/net/src/Content/__init__.py: -------------------------------------------------------------------------------- 1 | from ContentManager import ContentManager -------------------------------------------------------------------------------- /src/shaarli/plugins/pubsubhubbub/hub.atom.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/plugins/CryptMessage/Test/conftest.py: -------------------------------------------------------------------------------- 1 | from src.Test.conftest import * -------------------------------------------------------------------------------- /src/net/plugins/disabled-Bootstrapper/__init__.py: -------------------------------------------------------------------------------- 1 | import BootstrapperPlugin -------------------------------------------------------------------------------- /src/net/src/lib/pybitcointools/MANIFEST.in: -------------------------------------------------------------------------------- 1 | include bitcoin/english.txt 2 | -------------------------------------------------------------------------------- /src/shaarli/plugins/pubsubhubbub/hub.rss.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/net/plugins/OptionalManager/Test/conftest.py: -------------------------------------------------------------------------------- 1 | from src.Test.conftest import * -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /out 2 | /bin 3 | /temp 4 | /docs 5 | *.sdf 6 | *.suo 7 | node_modules 8 | -------------------------------------------------------------------------------- /src/net/plugins/Zeroname/__init__.py: -------------------------------------------------------------------------------- 1 | import UiRequestPlugin 2 | import SiteManagerPlugin -------------------------------------------------------------------------------- /src/net/plugins/disabled-Bootstrapper/Test/conftest.py: -------------------------------------------------------------------------------- 1 | from src.Test.conftest import * -------------------------------------------------------------------------------- /src/net/plugins/disabled-DonationMessage/__init__.py: -------------------------------------------------------------------------------- 1 | import DonationMessagePlugin 2 | -------------------------------------------------------------------------------- /src/shaarli/plugins/default_colors/default_colors.css.template: -------------------------------------------------------------------------------- 1 | :root { 2 | %s 3 | } 4 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/optional.txt: -------------------------------------------------------------------------------- 1 | hello! -------------------------------------------------------------------------------- /src/shaarli/plugins/isso/isso.css: -------------------------------------------------------------------------------- 1 | #isso-thread > h4 { 2 | text-align: center; 3 | } 4 | -------------------------------------------------------------------------------- /src/shaarli/plugins/qrcode/qrcode.meta: -------------------------------------------------------------------------------- 1 | description="For each link, add a QRCode icon." 2 | -------------------------------------------------------------------------------- /src/net/src/Peer/__init__.py: -------------------------------------------------------------------------------- 1 | from Peer import Peer 2 | from PeerHashfield import PeerHashfield 3 | -------------------------------------------------------------------------------- /src/net/tools/coffee/coffee.cmd: -------------------------------------------------------------------------------- 1 | ::For convenience 2 | @cscript //nologo "%~dp0coffee.wsf" %* 3 | -------------------------------------------------------------------------------- /src/net/plugins/disabled-Zeroname-local/__init__.py: -------------------------------------------------------------------------------- 1 | import UiRequestPlugin 2 | import SiteManagerPlugin -------------------------------------------------------------------------------- /src/net/src/File/__init__.py: -------------------------------------------------------------------------------- 1 | from FileServer import FileServer 2 | from FileRequest import FileRequest -------------------------------------------------------------------------------- /src/net/src/Worker/__init__.py: -------------------------------------------------------------------------------- 1 | from Worker import Worker 2 | from WorkerManager import WorkerManager -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/codec/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is necessary to make this directory a package. 2 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/type/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is necessary to make this directory a package. 2 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/codec/ber/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is necessary to make this directory a package. 2 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/codec/cer/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is necessary to make this directory a package. 2 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/codec/der/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is necessary to make this directory a package. 2 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/compat/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is necessary to make this directory a package. 2 | -------------------------------------------------------------------------------- /src/shaarli/plugins/archiveorg/archiveorg.meta: -------------------------------------------------------------------------------- 1 | description="For each link, add an Archive.org icon." 2 | -------------------------------------------------------------------------------- /src/shaarli/plugins/demo_plugin/demo_plugin.js: -------------------------------------------------------------------------------- 1 | console.log("I love the smell of napalm in the morning."); -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/__init__.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | if sys.platform == 'win32': 4 | import TrayiconPlugin -------------------------------------------------------------------------------- /src/net/src/Db/__init__.py: -------------------------------------------------------------------------------- 1 | from Db import Db 2 | from DbQuery import DbQuery 3 | from DbCursor import DbCursor -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/THANKS: -------------------------------------------------------------------------------- 1 | Denis S. Otkidach 2 | Gregory Golberg 3 | Bud P. Bruegger 4 | Jacek Konieczny 5 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/codec/native/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is necessary to make this directory a package. 2 | -------------------------------------------------------------------------------- /src/huginn/doc/imgs/peaks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/doc/imgs/peaks.png -------------------------------------------------------------------------------- /src/huginn/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/public/favicon.ico -------------------------------------------------------------------------------- /src/huginn/doc/imgs/diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/doc/imgs/diagram.png -------------------------------------------------------------------------------- /src/huginn/doc/imgs/new-agent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/doc/imgs/new-agent.png -------------------------------------------------------------------------------- /src/huginn/doc/imgs/the-name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/doc/imgs/the-name.png -------------------------------------------------------------------------------- /src/net/src/Connection/__init__.py: -------------------------------------------------------------------------------- 1 | from ConnectionServer import ConnectionServer 2 | from Connection import Connection 3 | -------------------------------------------------------------------------------- /src/net/src/Ui/media/img/logo.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Ui/media/img/logo.psd -------------------------------------------------------------------------------- /src/shaarli/plugins/addlink_toolbar/addlink_toolbar.meta: -------------------------------------------------------------------------------- 1 | description="Adds the addlink input on the linklist page." 2 | -------------------------------------------------------------------------------- /src/shaarli/plugins/playvideos/playvideos.meta: -------------------------------------------------------------------------------- 1 | description="Add a button in the toolbar allowing to watch all videos." 2 | -------------------------------------------------------------------------------- /src/huginn/doc/imgs/your-agents.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/doc/imgs/your-agents.png -------------------------------------------------------------------------------- /src/net/src/lib/PySocks/test/mocks: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/lib/PySocks/test/mocks -------------------------------------------------------------------------------- /src/net/src/util/__init__.py: -------------------------------------------------------------------------------- 1 | from Event import Event 2 | from Noparallel import Noparallel 3 | from Pooled import Pooled 4 | -------------------------------------------------------------------------------- /src/shaarli/doc/md/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/doc/md/images/icon.png -------------------------------------------------------------------------------- /src/shaarli/doc/md/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/doc/md/images/logo.png -------------------------------------------------------------------------------- /tools/config.h.in: -------------------------------------------------------------------------------- 1 | 2 | 3 | #cmakedefine HAVE_ICONV_H 1 4 | #cmakedefine HAVE_GLIB_C_225_H 1 5 | #cmakedefine HAVE_GLIB_C_22_H 1 -------------------------------------------------------------------------------- /src/huginn/app/assets/images/odin.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/app/assets/images/odin.jpg -------------------------------------------------------------------------------- /src/huginn/doc/imgs/my-locations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/doc/imgs/my-locations.png -------------------------------------------------------------------------------- /src/net/plugins/BigFile/__init__.py: -------------------------------------------------------------------------------- 1 | import BigfilePlugin 2 | from BigfilePiecefield import BigfilePiecefield, BigfilePiecefieldPacked -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/trayicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/plugins/Trayicon/trayicon.ico -------------------------------------------------------------------------------- /src/net/src/Ui/__init__.py: -------------------------------------------------------------------------------- 1 | from UiServer import UiServer 2 | from UiRequest import UiRequest 3 | from UiWebsocket import UiWebsocket -------------------------------------------------------------------------------- /src/net/src/Ui/media/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Ui/media/img/favicon.ico -------------------------------------------------------------------------------- /src/net/src/Ui/media/img/favicon.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Ui/media/img/favicon.psd -------------------------------------------------------------------------------- /src/net/src/Ui/media/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Ui/media/img/loading.gif -------------------------------------------------------------------------------- /src/shaarli/doc/md/images/doc-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/doc/md/images/doc-logo.png -------------------------------------------------------------------------------- /src/shaarli/plugins/isso/comment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/plugins/isso/comment.png -------------------------------------------------------------------------------- /src/shaarli/plugins/qrcode/qrcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/plugins/qrcode/qrcode.png -------------------------------------------------------------------------------- /src/net/src/Site/__init__.py: -------------------------------------------------------------------------------- 1 | from Site import Site 2 | from SiteStorage import SiteStorage 3 | from SiteAnnounce import SiteAnnounce 4 | -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/logo.png -------------------------------------------------------------------------------- /src/shaarli/doc/md/images/edit_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/doc/md/images/edit_icon.png -------------------------------------------------------------------------------- /src/shaarli/plugins/pubsubhubbub/pubsubhubbub.meta: -------------------------------------------------------------------------------- 1 | description="Enable PubSubHubbub feed publishing." 2 | parameters="PUBSUBHUB_URL" 3 | -------------------------------------------------------------------------------- /src/net/src/Ui/media/img/loading-circle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Ui/media/img/loading-circle.gif -------------------------------------------------------------------------------- /src/net/src/lib/opensslVerify/HashInfo.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/lib/opensslVerify/HashInfo.txt -------------------------------------------------------------------------------- /src/net/src/lib/opensslVerify/libeay32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/lib/opensslVerify/libeay32.dll -------------------------------------------------------------------------------- /src/net/src/lib/opensslVerify/openssl.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/lib/opensslVerify/openssl.exe -------------------------------------------------------------------------------- /src/net/src/lib/opensslVerify/ssleay32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/lib/opensslVerify/ssleay32.dll -------------------------------------------------------------------------------- /src/shaarli/assets/default/img/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/default/img/favicon.png -------------------------------------------------------------------------------- /src/shaarli/assets/default/img/sad_star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/default/img/sad_star.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/calendar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/calendar.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/favicon.ico -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/private.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/private.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/squiggle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/squiggle.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/tag_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/tag_blue.png -------------------------------------------------------------------------------- /src/shaarli/doc/md/dev/images/poedit-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/doc/md/dev/images/poedit-1.jpg -------------------------------------------------------------------------------- /src/shaarli/doc/md/images/rss-filter-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/doc/md/images/rss-filter-1.png -------------------------------------------------------------------------------- /src/shaarli/doc/md/images/rss-filter-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/doc/md/images/rss-filter-2.png -------------------------------------------------------------------------------- /src/shaarli/plugins/wallabag/wallabag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/plugins/wallabag/wallabag.png -------------------------------------------------------------------------------- /src/net/plugins/AnnounceLocal/Test/conftest.py: -------------------------------------------------------------------------------- 1 | from src.Test.conftest import * 2 | 3 | from Config import config 4 | config.broadcast_port = 0 5 | -------------------------------------------------------------------------------- /src/net/plugins/Sidebar/media-globe/world.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/plugins/Sidebar/media-globe/world.jpg -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/edit_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/edit_icon.png -------------------------------------------------------------------------------- /src/shaarli/doc/md/images/07-installation.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/doc/md/images/07-installation.jpg -------------------------------------------------------------------------------- /src/huginn/app/assets/images/spinner-arrows.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/app/assets/images/spinner-arrows.gif -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/delete_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/delete_icon.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/floral_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/floral_left.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/floral_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/floral_right.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/private_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/private_16x16.png -------------------------------------------------------------------------------- /src/net/src/Test/pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | python_files = Test*.py 3 | addopts = -rsxX -v --durations=6 4 | markers = 5 | webtest: mark a test as a webtest. -------------------------------------------------------------------------------- /src/shaarli/assets/default/fonts/Roboto-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/default/fonts/Roboto-Bold.woff -------------------------------------------------------------------------------- /src/shaarli/assets/default/fonts/Roboto-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/default/fonts/Roboto-Bold.woff2 -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/feed-icon-14x14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/feed-icon-14x14.png -------------------------------------------------------------------------------- /src/shaarli/plugins/archiveorg/internetarchive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/plugins/archiveorg/internetarchive.png -------------------------------------------------------------------------------- /src/huginn/vendor/assets/images/json-editor/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/vendor/assets/images/json-editor/add.png -------------------------------------------------------------------------------- /src/shaarli/assets/default/fonts/Roboto-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/default/fonts/Roboto-Regular.woff -------------------------------------------------------------------------------- /src/shaarli/assets/default/fonts/Roboto-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/default/fonts/Roboto-Regular.woff2 -------------------------------------------------------------------------------- /src/shaarli/assets/default/img/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/default/img/apple-touch-icon.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/50pc_transparent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/50pc_transparent.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/squiggle_closing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/squiggle_closing.png -------------------------------------------------------------------------------- /src/huginn/vendor/assets/images/json-editor/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/vendor/assets/images/json-editor/delete.png -------------------------------------------------------------------------------- /src/shaarli/assets/vintage/img/private_16x16_active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/assets/vintage/img/private_16x16_active.png -------------------------------------------------------------------------------- /src/huginn/app/views/home/index.html.erb: -------------------------------------------------------------------------------- 1 | <% if user_signed_in? %> 2 | <%= render "signed_in_index" %> 3 | <% else %> 4 | <%= render "signed_out_index" %> 5 | <% end %> -------------------------------------------------------------------------------- /src/huginn/vendor/assets/images/glyphicons-halflings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/vendor/assets/images/glyphicons-halflings.png -------------------------------------------------------------------------------- /src/net/plugins/BigFile/Test/pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | python_files = Test*.py 3 | addopts = -rsxX -v --durations=6 4 | markers = 5 | webtest: mark a test as a webtest. -------------------------------------------------------------------------------- /src/net/src/lib/PySocks/test/README: -------------------------------------------------------------------------------- 1 | Very rudimentary tests for Python 2 and Python 3. 2 | 3 | Requirements: tornado, twisted (available through pip) 4 | 5 | ./test.sh 6 | -------------------------------------------------------------------------------- /src/shaarli/plugins/readitlater/readitlater_button.html: -------------------------------------------------------------------------------- 1 | 2 | %s 3 | 4 | -------------------------------------------------------------------------------- /src/net/plugins/AnnounceLocal/Test/pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | python_files = Test*.py 3 | addopts = -rsxX -v --durations=6 4 | markers = 5 | webtest: mark a test as a webtest. -------------------------------------------------------------------------------- /src/net/plugins/CryptMessage/Test/pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | python_files = Test*.py 3 | addopts = -rsxX -v --durations=6 4 | markers = 5 | webtest: mark a test as a webtest. -------------------------------------------------------------------------------- /src/net/plugins/OptionalManager/Test/pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | python_files = Test*.py 3 | addopts = -rsxX -v --durations=6 4 | markers = 5 | webtest: mark a test as a webtest. -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "fibjs"] 2 | path = fibjs 3 | url = https://github.com/fibjs/fibjs.git 4 | [submodule "eos"] 5 | path = eos 6 | url = https://github.com/EOSIO/eos.git 7 | -------------------------------------------------------------------------------- /src/huginn/vendor/assets/images/glyphicons-halflings-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/huginn/vendor/assets/images/glyphicons-halflings-white.png -------------------------------------------------------------------------------- /src/net/plugins/Sidebar/maxminddb/const.py: -------------------------------------------------------------------------------- 1 | """Constants used in the API""" 2 | 3 | MODE_AUTO = 0 4 | MODE_MMAP_EXT = 1 5 | MODE_MMAP = 2 6 | MODE_FILE = 4 7 | MODE_MEMORY = 8 8 | -------------------------------------------------------------------------------- /src/net/plugins/disabled-Bootstrapper/Test/pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | python_files = Test*.py 3 | addopts = -rsxX -v --durations=6 4 | markers = 5 | webtest: mark a test as a webtest. -------------------------------------------------------------------------------- /src/shaarli/plugins/demo_plugin/field.html: -------------------------------------------------------------------------------- 1 |
2 |
-------------------------------------------------------------------------------- /src/shaarli/plugins/readitlater/readitlater_editlink.html: -------------------------------------------------------------------------------- 1 |
2 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20130124050117_add_indexes.rb: -------------------------------------------------------------------------------- 1 | class AddIndexes < ActiveRecord::Migration 2 | def change 3 | add_index :links, [:receiver_id, :source_id] 4 | end 5 | end 6 | -------------------------------------------------------------------------------- /src/shaarli/plugins/demo_plugin/languages/fr/LC_MESSAGES/demo.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/shaarli/plugins/demo_plugin/languages/fr/LC_MESSAGES/demo.mo -------------------------------------------------------------------------------- /installer.txt: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | echo "This program will install dmc into /usr/local/bin." 3 | ( read l; read l ; read l; read l; exec cat ) < "$0" | sudo tar -C /usr/local/bin/ -zxf - dmc 4 | exit -------------------------------------------------------------------------------- /src/huginn/db/migrate/20121231170705_add_memory_to_agents.rb: -------------------------------------------------------------------------------- 1 | class AddMemoryToAgents < ActiveRecord::Migration 2 | def change 3 | add_column :agents, :memory, :text 4 | end 5 | end 6 | -------------------------------------------------------------------------------- /src/net/src/lib/bencode/__init__.py: -------------------------------------------------------------------------------- 1 | try: 2 | string_type = basestring 3 | except NameError: 4 | string_type = str 5 | 6 | from .encode import encode 7 | from .decode import decode 8 | -------------------------------------------------------------------------------- /src/shaarli/plugins/demo_plugin/custom_demo.css: -------------------------------------------------------------------------------- 1 | .linktitle a { 2 | color: red; 3 | } 4 | 5 | #demo_marquee { 6 | background: darkmagenta; 7 | color: white; 8 | font-weight: bold; 9 | } -------------------------------------------------------------------------------- /src/net/plugins/disabled-Dnschain/__init__.py: -------------------------------------------------------------------------------- 1 | # This plugin is experimental, if you really want to enable uncomment the following lines: 2 | # import DnschainPlugin 3 | # import SiteManagerPlugin -------------------------------------------------------------------------------- /src/shaarli/application/bookmark/exception/EmptyDataStoreException.php: -------------------------------------------------------------------------------- 1 | %s?": "屏蔽 %s 的所有内容?", 3 | "Mute": "屏蔽", 4 | "Unmute %s?": "对 %s 解除屏蔽?", 5 | "Unmute": "解除屏蔽" 6 | } 7 | -------------------------------------------------------------------------------- /src/shaarli/plugins/isso/isso.meta: -------------------------------------------------------------------------------- 1 | description="Let visitor comment your shaares on permalinks with Isso." 2 | parameters="ISSO_SERVER" 3 | parameter.ISSO_SERVER="Isso server URL (without 'http://')" 4 | -------------------------------------------------------------------------------- /src/net/plugins/Mute/languages/zh-tw.json: -------------------------------------------------------------------------------- 1 | { 2 | "Hide all content from %s?": "屏蔽 %s 的所有內容?", 3 | "Mute": "屏蔽", 4 | "Unmute %s?": "對 %s 解除屏蔽?", 5 | "Unmute": "解除屏蔽" 6 | } 7 | -------------------------------------------------------------------------------- /src/huginn/app/controllers/application_controller.rb: -------------------------------------------------------------------------------- 1 | class ApplicationController < ActionController::Base 2 | protect_from_forgery 3 | 4 | before_filter :authenticate_user! 5 | 6 | helper :all 7 | end 8 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/languages/zh.json: -------------------------------------------------------------------------------- 1 | { 2 | "Add %s new site?": "添加新站点: %s?", 3 | "Added %s new site": "已添加到新站点:%s", 4 | "Site deleted: %s": "站点已删除:%s" 5 | } 6 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/languages/zh-tw.json: -------------------------------------------------------------------------------- 1 | { 2 | "Add %s new site?": "添加新網站: %s?", 3 | "Added %s new site": "已添加到新網站:%s", 4 | "Site deleted: %s": "網站已刪除:%s" 5 | } 6 | -------------------------------------------------------------------------------- /src/shaarli/assets/common/js/thumbnails.js: -------------------------------------------------------------------------------- 1 | import Blazy from 'blazy'; 2 | 3 | (() => { 4 | // Suppress ESLint error because that's how bLazy works 5 | /* eslint-disable no-new */ 6 | new Blazy(); 7 | })(); 8 | -------------------------------------------------------------------------------- /src/shaarli/plugins/wallabag/wallabag.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | wallabag 4 | 5 | 6 | -------------------------------------------------------------------------------- /include/types.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | namespace eosio { 4 | namespace chain { 5 | enum dmc_object_type { 6 | event_cache_object_type = 10000, ///< Defined by emitter_plugin 7 | }; 8 | } 9 | } // eosio::chain -------------------------------------------------------------------------------- /src/huginn/app/controllers/home_controller.rb: -------------------------------------------------------------------------------- 1 | class HomeController < ApplicationController 2 | skip_before_filter :authenticate_user! 3 | 4 | def index 5 | end 6 | 7 | def about 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /src/huginn/config/initializers/aws.rb: -------------------------------------------------------------------------------- 1 | unless Rails.env.test? 2 | RTurk::logger.level = Logger::DEBUG 3 | RTurk.setup(ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_ACCESS_KEY'], :sandbox => ENV['AWS_SANDBOX'] == "true") 4 | end 5 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20130509053743_add_last_webhook_at_to_agents.rb: -------------------------------------------------------------------------------- 1 | class AddLastWebhookAtToAgents < ActiveRecord::Migration 2 | def change 3 | add_column :agents, :last_webhook_at, :datetime 4 | end 5 | end 6 | -------------------------------------------------------------------------------- /src/shaarli/application/legacy/UnknowLegacyRouteException.php: -------------------------------------------------------------------------------- 1 | false, :null => false 4 | end 5 | end 6 | -------------------------------------------------------------------------------- /src/huginn/script/delayed_job: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby 2 | 3 | require File.expand_path(File.join(File.dirname(__FILE__), '..', 'config', 'environment')) 4 | require 'delayed/command' 5 | Delayed::Command.new(ARGV).daemonize 6 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/img/loading.gif -------------------------------------------------------------------------------- /src/shaarli/application/front/exceptions/CantLoginException.php: -------------------------------------------------------------------------------- 1 | false 4 | end 5 | end 6 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/domain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/domain.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/memory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/memory.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/slides.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/slides.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zeroid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zeroid.png -------------------------------------------------------------------------------- /src/shaarli/plugins/piwik/piwik.meta: -------------------------------------------------------------------------------- 1 | description="A plugin that adds Piwik tracking code to Shaarli pages." 2 | parameters="PIWIK_URL;PIWIK_SITEID" 3 | parameter.PIWIK_URL="Piwik URL" 4 | parameter.PIWIK_SITEID="Piwik site ID" 5 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/languages/fr.json: -------------------------------------------------------------------------------- 1 | { 2 | "Add %s new site?": "Ajouter le site %s ?", 3 | "Added %s new site": "Site %s ajouté", 4 | "Site deleted: %s": "Site %s supprimé" 5 | } 6 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/trayicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/trayicon.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zeroname.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zeroname.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zerotalk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zerotalk.png -------------------------------------------------------------------------------- /src/net/src/lib/geventwebsocket/AUTHORS: -------------------------------------------------------------------------------- 1 | This Websocket library for Gevent is written and maintained by 2 | 3 | Jeffrey Gelens 4 | 5 | 6 | Contributors: 7 | 8 | Denis Bilenko 9 | Lon Ingram 10 | -------------------------------------------------------------------------------- /src/huginn/config/boot.rb: -------------------------------------------------------------------------------- 1 | require 'rubygems' 2 | 3 | # Set up gems listed in the Gemfile. 4 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__) 5 | 6 | require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE']) 7 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/languages/tr.json: -------------------------------------------------------------------------------- 1 | { 2 | "Add %s new site?": "%s sitesi eklensin mi?", 3 | "Added %s new site": "%s sitesi eklendi", 4 | "Site deleted: %s": "%s sitesi silindi" 5 | } 6 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/autoupdate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/autoupdate.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/multiuser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/multiuser.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/progressbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/progressbar.png -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/__init__.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | # http://www.python.org/dev/peps/pep-0396/ 4 | __version__ = '0.2.4' 5 | 6 | if sys.version_info[:2] < (2, 4): 7 | raise RuntimeError('PyASN1 requires Python 2.4 or later') 8 | 9 | -------------------------------------------------------------------------------- /src/shaarli/plugins/archiveorg/archiveorg.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | archive.org 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/huginn/app/views/system_mailer/send_message.text.erb: -------------------------------------------------------------------------------- 1 | <% if @headline %><%= @headline %> 2 | 3 | <% end %><% @groups.each do |group| %><%= group[:title] %> 4 | <% group[:entries].each do |entry| %> <%= entry %> 5 | <% end %> 6 | 7 | <% end %> -------------------------------------------------------------------------------- /src/huginn/db/migrate/20131105063248_add_expires_at_to_events.rb: -------------------------------------------------------------------------------- 1 | class AddExpiresAtToEvents < ActiveRecord::Migration 2 | def change 3 | add_column :events, :expires_at, :datetime 4 | add_index :events, :expires_at 5 | end 6 | end 7 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/languages/es.json: -------------------------------------------------------------------------------- 1 | { 2 | "Add %s new site?": "¿Agregar %s nuevo sitio?", 3 | "Added %s new site": "Sitio %s agregado", 4 | "Site deleted: %s": "Sitio removido: %s" 5 | } 6 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/languages/hu.json: -------------------------------------------------------------------------------- 1 | { 2 | "Add %s new site?": "Új oldal hozzáadása: %s?", 3 | "Added %s new site": "Új oldal hozzáadva: %s", 4 | "Site deleted: %s": "Oldal törölve: %s" 5 | } 6 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/languages/it.json: -------------------------------------------------------------------------------- 1 | { 2 | "Add %s new site?": "Aggiungere %s nuovo sito ?", 3 | "Added %s new site": "Sito %s aggiunto", 4 | "Site deleted: %s": "Sito %s eliminato" 5 | } 6 | -------------------------------------------------------------------------------- /src/net/plugins/MergerSite/languages/pt-br.json: -------------------------------------------------------------------------------- 1 | { 2 | "Add %s new site?": "Adicionar %s novo site?", 3 | "Added %s new site": "Site %s adicionado", 4 | "Site deleted: %s": "Site removido: %s" 5 | } 6 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/slots_memory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/slots_memory.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zerotalk-mark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zerotalk-mark.png -------------------------------------------------------------------------------- /src/huginn/app/views/home/about.html.erb: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 7 |
8 |
9 |
-------------------------------------------------------------------------------- /src/huginn/db/migrate/20131222211558_add_keep_events_for_to_agents.rb: -------------------------------------------------------------------------------- 1 | class AddKeepEventsForToAgents < ActiveRecord::Migration 2 | def change 3 | add_column :agents, :keep_events_for, :integer, :null => false, :default => 0 4 | end 5 | end 6 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20140210062747_add_mode_to_user_credentials.rb: -------------------------------------------------------------------------------- 1 | class AddModeToUserCredentials < ActiveRecord::Migration 2 | def change 3 | add_column :user_credentials, :mode, :string, :default => 'text', :null => false 4 | end 5 | end 6 | -------------------------------------------------------------------------------- /src/huginn/public/robots.txt: -------------------------------------------------------------------------------- 1 | # See http://www.robotstxt.org/wc/norobots.html for documentation on how to use the robots.txt file 2 | # 3 | # To ban all spiders from the entire site uncomment the next two lines: 4 | # User-Agent: * 5 | # Disallow: / 6 | -------------------------------------------------------------------------------- /src/huginn/spec/fixtures/links.yml: -------------------------------------------------------------------------------- 1 | jane_rain_notifier_agent_link: 2 | receiver: jane_rain_notifier_agent 3 | source: jane_weather_agent 4 | 5 | bob_rain_notifier_agent_link: 6 | receiver: bob_rain_notifier_agent 7 | source: bob_weather_agent -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/direct_domains.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/direct_domains.png -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zerotalk-upvote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zerotalk-upvote.png -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/page.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {include="includes"} 4 | 5 | 6 | You body goes here... 7 | {include="page.footer"} 8 | 9 | -------------------------------------------------------------------------------- /src/net/plugins/Mute/languages/es.json: -------------------------------------------------------------------------------- 1 | { 2 | "Hide all content from %s?": "Esconder todo el contenido de %s?", 3 | "Mute": "Silenciar", 4 | "Unmute %s?": "Mostrar todo el contenido de %s?", 5 | "Unmute": "Reactivar" 6 | } 7 | -------------------------------------------------------------------------------- /src/net/plugins/Mute/languages/pt-br.json: -------------------------------------------------------------------------------- 1 | { 2 | "Hide all content from %s?": "Esconder todo conteúdo de %s?", 3 | "Mute": "Ativar mudo", 4 | "Unmute %s?": "Mostrar o contéudo de %s?", 5 | "Unmute": "Desativar mudo" 6 | } 7 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zeroblog-comments.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/img/zeroblog-comments.png -------------------------------------------------------------------------------- /src/net/plugins/Mute/languages/hu.json: -------------------------------------------------------------------------------- 1 | { 2 | "Hide all content from %s?": "%s tartalmaniak elrejtése?", 3 | "Mute": "Elnémítás", 4 | "Unmute %s?": "%s tartalmaniak megjelenítése?", 5 | "Unmute": "Némítás visszavonása" 6 | } 7 | -------------------------------------------------------------------------------- /src/shaarli/application/bookmark/exception/DatastoreNotInitializedException.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | QRCode 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/net/plugins/Mute/languages/it.json: -------------------------------------------------------------------------------- 1 | { 2 | "Hide all content from %s?": "%s Vuoi nascondere i contenuti di questo utente ?", 3 | "Mute": "Attiva Silenzia", 4 | "Unmute %s?": "%s Vuoi mostrare i contenuti di questo utente ?", 5 | "Unmute": "Disattiva Silenzia" 6 | } 7 | -------------------------------------------------------------------------------- /src/huginn/deployment/site-cookbooks/huginn_production/files/default/Procfile: -------------------------------------------------------------------------------- 1 | web: sudo bundle exec unicorn_rails -c config/unicorn.rb 2 | schedule: sudo bundle exec rails runner bin/schedule.rb 3 | twitter: sudo bundle exec rails runner bin/twitter_stream.rb 4 | dj: sudo bundle exec script/delayed_job run 5 | -------------------------------------------------------------------------------- /src/shaarli/inc/web-thumbnailer.json: -------------------------------------------------------------------------------- 1 | { 2 | "settings": { 3 | "default": { 4 | "download_mode": "DOWNLOAD", 5 | "_comment": "infinite cache", 6 | "cache_duration": -1, 7 | "timeout": 10 8 | }, 9 | "path": { 10 | "cache": "cache/" 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/shaarli/tpl/default/pluginscontent.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {include="includes"} 5 | 6 | 7 | {include="page.header"} 8 | 9 | {$content} 10 | 11 | {include="page.footer"} 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/huginn/Rakefile: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env rake 2 | # Add your own tasks in files placed in lib/tasks ending in .rake, 3 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. 4 | 5 | require File.expand_path('../config/application', __FILE__) 6 | 7 | Huginn::Application.load_tasks 8 | -------------------------------------------------------------------------------- /src/huginn/app/views/devise/mailer/confirmation_instructions.html.erb: -------------------------------------------------------------------------------- 1 |

Welcome <%= @resource.email %>!

2 | 3 |

You can confirm your account email through the link below:

4 | 5 |

<%= link_to 'Confirm my account', confirmation_url(@resource, :confirmation_token => @resource.confirmation_token) %>

6 | -------------------------------------------------------------------------------- /src/net/plugins/Sidebar/maxminddb/errors.py: -------------------------------------------------------------------------------- 1 | """ 2 | maxminddb.errors 3 | ~~~~~~~~~~~~~~~~ 4 | 5 | This module contains custom errors for the MaxMind DB reader 6 | """ 7 | 8 | 9 | class InvalidDatabaseError(RuntimeError): 10 | 11 | """This error is thrown when unexpected data is found in the database.""" 12 | -------------------------------------------------------------------------------- /src/net/plugins/disabled-StemPort/__init__.py: -------------------------------------------------------------------------------- 1 | try: 2 | from stem.control import Controller 3 | stem_found = True 4 | except Exception as err: 5 | print "STEM NOT FOUND! %s" % err 6 | stem_found = False 7 | 8 | if stem_found: 9 | print "Starting Stem plugin..." 10 | import StemPortPlugin 11 | -------------------------------------------------------------------------------- /src/shaarli/plugins/readitlater/readitlater.meta: -------------------------------------------------------------------------------- 1 | description="Mark bookmarks to read them later, with bookmark list highlight and filter." 2 | parameters="READITLATER_DEFAULT_CHECK" 3 | parameter.READITLATER_DEFAULT_CHECK="By default, mark new bookmarks to read them later (with 1) or not (with 0)" 4 | -------------------------------------------------------------------------------- /src/shaarli/tmp/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | = 2.4> 3 | Require all denied 4 | 5 | 6 | Allow from none 7 | Deny from all 8 | 9 | 10 | 11 | 12 | Require all denied 13 | 14 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data-default/data.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "MyZeroBlog", 3 | "description": "My ZeroBlog.", 4 | "links": "- [Source code](https://github.com/HelloZeroNet)", 5 | "next_post_id": 1, 6 | "demo": false, 7 | "modified": 1432515193, 8 | "post": [ 9 | ] 10 | } -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/type/error.py: -------------------------------------------------------------------------------- 1 | # 2 | # This file is part of pyasn1 software. 3 | # 4 | # Copyright (c) 2005-2017, Ilya Etingof 5 | # License: http://pyasn1.sf.net/license.html 6 | # 7 | from pyasn1.error import PyAsn1Error 8 | 9 | 10 | class ValueConstraintError(PyAsn1Error): 11 | pass 12 | -------------------------------------------------------------------------------- /src/shaarli/.editorconfig.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/.editorconfig b/src/shaarli/.editorconfig (rejected hunks) 2 | @@ -10,7 +10,7 @@ trim_trailing_whitespace = true 3 | indent_style = space 4 | indent_size = 4 5 | 6 | -[*.{htaccess,html,xml}] 7 | +[*.{htaccess,html,xml,js}] 8 | indent_size = 2 9 | 10 | [*.php] 11 | -------------------------------------------------------------------------------- /src/shaarli/assets/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | = 2.4> 3 | Require all denied 4 | 5 | 6 | Allow from none 7 | Deny from all 8 | 9 | 10 | 11 | 12 | Require all denied 13 | 14 | -------------------------------------------------------------------------------- /src/shaarli/cache/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | = 2.4> 3 | Require all denied 4 | 5 | 6 | Allow from none 7 | Deny from all 8 | 9 | 10 | 11 | 12 | Require all denied 13 | 14 | -------------------------------------------------------------------------------- /src/shaarli/pagecache/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | = 2.4> 3 | Require all denied 4 | 5 | 6 | Allow from none 7 | Deny from all 8 | 9 | 10 | 11 | 12 | Require all denied 13 | 14 | -------------------------------------------------------------------------------- /src/shaarli/application/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | = 2.4> 3 | Require all denied 4 | 5 | 6 | Allow from none 7 | Deny from all 8 | 9 | 10 | 11 | 12 | Require all denied 13 | 14 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite the default settings 2 | { 3 | "editor.formatOnSave": true, 4 | 5 | "files.associations": { 6 | "*.idl": "java" 7 | }, 8 | 9 | "C_Cpp.clang_format_sortIncludes": false, 10 | "C_Cpp.clang_format_fallbackStyle": "WebKit" 11 | } 12 | -------------------------------------------------------------------------------- /src/huginn/script/rails: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby 2 | # This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application. 3 | 4 | APP_PATH = File.expand_path('../../config/application', __FILE__) 5 | require File.expand_path('../../config/boot', __FILE__) 6 | require 'rails/commands' 7 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/users/1C5sgvWaSgfaTpV5kjBCnCiKtENNMYo69q/data.json: -------------------------------------------------------------------------------- 1 | { 2 | "next_comment_id": 2, 3 | "comment": [ 4 | { 5 | "comment_id": 1, 6 | "body": "Test me!", 7 | "post_id": 40, 8 | "date_added": 1432554679 9 | } 10 | ], 11 | "comment_vote": {} 12 | } -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/users/1CjfbrbwtP8Y2QjPy12vpTATkUT7oSiPQ9/peanut-butter-jelly-time.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datamallchain/dmchain/HEAD/src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/users/1CjfbrbwtP8Y2QjPy12vpTATkUT7oSiPQ9/peanut-butter-jelly-time.gif -------------------------------------------------------------------------------- /src/net/start.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python2.7 2 | 3 | 4 | # Included modules 5 | import sys 6 | 7 | # ZeroNet Modules 8 | import zeronet 9 | 10 | 11 | def main(): 12 | sys.argv = [sys.argv[0]]+["--open_browser", "default_browser"]+sys.argv[1:] 13 | zeronet.main() 14 | 15 | if __name__ == '__main__': 16 | main() 17 | -------------------------------------------------------------------------------- /tools/subdirs.cmake: -------------------------------------------------------------------------------- 1 | MACRO(SUBDIRLIST result curdir) 2 | FILE(GLOB children RELATIVE ${curdir} ${curdir}/*) 3 | SET(dirlist "") 4 | FOREACH(child ${children}) 5 | IF(IS_DIRECTORY ${curdir}/${child}) 6 | LIST(APPEND dirlist ${child}) 7 | ENDIF() 8 | ENDFOREACH() 9 | SET(${result} ${dirlist}) 10 | ENDMACRO() -------------------------------------------------------------------------------- /src/huginn/db/migrate/20121222074732_create_links.rb: -------------------------------------------------------------------------------- 1 | class CreateLinks < ActiveRecord::Migration 2 | def change 3 | create_table :links do |t| 4 | t.integer :source_id 5 | t.integer :receiver_id 6 | 7 | t.timestamps 8 | end 9 | 10 | add_index :links, [:source_id, :receiver_id] 11 | end 12 | end 13 | -------------------------------------------------------------------------------- /src/net/src/Test/coverage.ini: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | concurrency = gevent 4 | omit = 5 | src/lib/* 6 | src/Test/* 7 | 8 | [report] 9 | exclude_lines = 10 | pragma: no cover 11 | if __name__ == .__main__.: 12 | if config.debug: 13 | if config.debug_socket: 14 | if self.logging: 15 | def __repr__ 16 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/users/1CjfbrbwtP8Y2QjPy12vpTATkUT7oSiPQ9/data.json: -------------------------------------------------------------------------------- 1 | { 2 | "next_comment_id": 2, 3 | "comment": [ 4 | { 5 | "comment_id": 1, 6 | "body": "hello from Tor!", 7 | "post_id": 38, 8 | "date_added": 1432491109 9 | } 10 | ], 11 | "comment_vote": {} 12 | } -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/users/1J6UrZMkarjVg5ax9W4qThir3BFUikbW6C/data.json: -------------------------------------------------------------------------------- 1 | { 2 | "next_comment_id": 2, 3 | "comment": [ 4 | { 5 | "comment_id": 1, 6 | "body": "hello from Tor!", 7 | "post_id": 38, 8 | "date_added": 1432491109 9 | } 10 | ], 11 | "comment_vote": {} 12 | } -------------------------------------------------------------------------------- /src/net/src/lib/pybitcointools/bitcoin/__init__.py: -------------------------------------------------------------------------------- 1 | from .py2specials import * 2 | from .py3specials import * 3 | from .main import * 4 | from .transaction import * 5 | from .deterministic import * 6 | from .bci import * 7 | from .composite import * 8 | from .stealth import * 9 | from .blocks import * 10 | from .mnemonic import * 11 | -------------------------------------------------------------------------------- /src/huginn/app/mailers/system_mailer.rb: -------------------------------------------------------------------------------- 1 | class SystemMailer < ActionMailer::Base 2 | default :from => ENV['EMAIL_FROM_ADDRESS'] || 'you@example.com' 3 | 4 | def send_message(options) 5 | @groups = options[:groups] 6 | @headline = options[:headline] 7 | mail :to => options[:to], :subject => options[:subject] 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20140216201250_add_propagate_immediately_to_agent.rb: -------------------------------------------------------------------------------- 1 | class AddPropagateImmediatelyToAgent < ActiveRecord::Migration 2 | def up 3 | add_column :agents, :propagate_immediately, :boolean, :default => false, :null => false 4 | end 5 | 6 | def down 7 | remove_column :agents, :propagate_immediately 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /src/huginn/deployment/solo.rb: -------------------------------------------------------------------------------- 1 | file_cache_path "/tmp/chef-solo" 2 | data_bag_path "/tmp/chef-solo/data_bags" 3 | encrypted_data_bag_secret "/tmp/chef-solo/data_bag_key" 4 | cookbook_path [ "/tmp/chef-solo/site-cookbooks", 5 | "/tmp/chef-solo/cookbooks" ] 6 | role_path "/tmp/chef-solo/roles" 7 | -------------------------------------------------------------------------------- /src/huginn/spec/fixtures/events.yml: -------------------------------------------------------------------------------- 1 | bob_website_agent_event: 2 | user: bob 3 | agent: bob_website_agent 4 | payload: <%= { :title => "foo", :url => "http://foo.com" }.to_json.inspect %> 5 | 6 | jane_website_agent_event: 7 | user: jane 8 | agent: jane_website_agent 9 | payload: <%= { :title => "foo", :url => "http://foo.com" }.to_json.inspect %> 10 | -------------------------------------------------------------------------------- /src/shaarli/tpl/default/linklist.html.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/tpl/default/linklist.html b/src/shaarli/tpl/default/linklist.html (rejected hunks) 2 | @@ -16,7 +16,6 @@ 3 | 4 | 5 | 6 | - 7 | 9 | -------------------------------------------------------------------------------- /src/huginn/app/views/devise/mailer/unlock_instructions.html.erb: -------------------------------------------------------------------------------- 1 |

Hello <%= @resource.email %>!

2 | 3 |

Your account has been locked due to an excessive amount of unsuccessful sign in attempts.

4 | 5 |

Click the link below to unlock your account:

6 | 7 |

<%= link_to 'Unlock my account', unlock_url(@resource, :unlock_token => @resource.unlock_token) %>

8 | -------------------------------------------------------------------------------- /src/huginn/config.ru: -------------------------------------------------------------------------------- 1 | # This file is used by Rack-based servers to start the application. 2 | 3 | require ::File.expand_path('../config/environment', __FILE__) 4 | 5 | # if Rails.env.production? 6 | # DelayedJobWeb.use Rack::Auth::Basic do |username, password| 7 | # username == 'admin' && password == 'password' 8 | # end 9 | # end 10 | 11 | run Huginn::Application 12 | -------------------------------------------------------------------------------- /src/huginn/config/environment.rb: -------------------------------------------------------------------------------- 1 | # Load the rails application 2 | require File.expand_path('../application', __FILE__) 3 | 4 | # Remove the XML parser from the list that will be used to initialize the application's XML parser list. 5 | ActionDispatch::ParamsParser::DEFAULT_PARSERS.delete(Mime::XML) 6 | 7 | # Initialize the rails application 8 | Huginn::Application.initialize! 9 | -------------------------------------------------------------------------------- /src/shaarli/plugins/demo_plugin/demo_plugin.meta: -------------------------------------------------------------------------------- 1 | description="A demo plugin covering all use cases for template designers and plugin developers." 2 | parameters="DEMO_PLUGIN_PARAMETER;DEMO_PLUGIN_OTHER_PARAMETER" 3 | parameter.DEMO_PLUGIN_PARAMETER="This is a parameter dedicated to the demo plugin. It'll be suffixed." 4 | parameter.DEMO_PLUGIN_OTHER_PARAMETER="Other demo parameter" 5 | -------------------------------------------------------------------------------- /src/huginn/.gitignore: -------------------------------------------------------------------------------- 1 | *.rbc 2 | *.sassc 3 | .sass-cache 4 | capybara-*.html 5 | .rspec 6 | /.bundle 7 | /vendor/bundle 8 | /log/* 9 | /tmp/* 10 | /db/*.sqlite3 11 | /public/system/* 12 | /coverage/ 13 | /spec/tmp/* 14 | **.orig 15 | rerun.txt 16 | pickle-email-*.html 17 | .idea/ 18 | .DS_Store 19 | .env 20 | deployment/tmp 21 | deployment/cookbooks 22 | .vagrant 23 | .*un~ 24 | -------------------------------------------------------------------------------- /src/shaarli/application/front/exceptions/UnauthorizedException.php: -------------------------------------------------------------------------------- 1 | %s.
Directory: %s": "你已經開始幫助分發 %s
目錄:%s", 5 | "Help distribute all new optional files on site %s": "你想要幫助分發 %s 網站的所有檔嗎?", 6 | "Yes, I want to help!": "是,我想要幫助!" 7 | } 8 | -------------------------------------------------------------------------------- /src/net/plugins/OptionalManager/languages/zh.json: -------------------------------------------------------------------------------- 1 | { 2 | "Pinned %s files": "已固定 %s 个文件", 3 | "Removed pin from %s files": "已解除固定 %s 个文件", 4 | "You started to help distribute %s.
Directory: %s": "你已经开始帮助分发 %s
目录:%s", 5 | "Help distribute all new optional files on site %s": "你想要帮助分发 %s 站点的所有文件吗?", 6 | "Yes, I want to help!": "是,我想要帮助!" 7 | } 8 | -------------------------------------------------------------------------------- /src/shaarli/application/Languages.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/Languages.php b/src/shaarli/application/Languages.php (rejected hunks) 2 | @@ -186,6 +186,7 @@ public static function getAvailableLanguages() 3 | 'en' => t('English'), 4 | 'fr' => t('French'), 5 | 'jp' => t('Japanese'), 6 | + 'ru' => t('Russian'), 7 | ]; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/error.py: -------------------------------------------------------------------------------- 1 | # 2 | # This file is part of pyasn1 software. 3 | # 4 | # Copyright (c) 2005-2017, Ilya Etingof 5 | # License: http://pyasn1.sf.net/license.html 6 | # 7 | 8 | 9 | class PyAsn1Error(Exception): 10 | pass 11 | 12 | 13 | class ValueConstraintError(PyAsn1Error): 14 | pass 15 | 16 | 17 | class SubstrateUnderrunError(PyAsn1Error): 18 | pass 19 | -------------------------------------------------------------------------------- /src/shaarli/application/formatter/Parsedown/ShaarliParsedown.php: -------------------------------------------------------------------------------- 1 | message = 'Not enough available disk space to save the datastore.'; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/huginn/app/helpers/agent_helper.rb: -------------------------------------------------------------------------------- 1 | module AgentHelper 2 | def agent_show_view(agent) 3 | name = agent.short_type.underscore 4 | if File.exists?(Rails.root.join("app", "views", "agents", "agent_views", name, "_show.html.erb")) 5 | File.join("agents", "agent_views", name, "show") 6 | end 7 | end 8 | 9 | def agent_show_class(agent) 10 | agent.short_type.underscore.dasherize 11 | end 12 | end -------------------------------------------------------------------------------- /src/shaarli/application/formatter/BookmarkRawFormatter.php: -------------------------------------------------------------------------------- 1 | 0 %> 2 |
3 | <% flash.each do |name, msg| %> 4 |
"> 5 | × 6 | <%= content_tag :div, msg, :id => "flash_#{name}" if msg.is_a?(String) %> 7 |
8 | <% end %> 9 |
10 | <% end %> 11 | -------------------------------------------------------------------------------- /src/shaarli/application/front/exceptions/ThumbnailsDisabledException.php: -------------------------------------------------------------------------------- 1 | {'Picture Wall'|t} - {$countPics} {'pics'|t} 3 | 4 | 5 | {include="page.footer"} 6 | - 7 | + 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/shaarli/application/plugin/PluginManager.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/plugin/PluginManager.php b/src/shaarli/application/plugin/PluginManager.php (rejected hunks) 2 | @@ -2,6 +2,7 @@ 3 | 4 | namespace Shaarli\Plugin; 5 | 6 | +use Shaarli\Bookmark\Bookmark; 7 | use Shaarli\Config\ConfigManager; 8 | use Shaarli\Plugin\Exception\PluginFileNotFoundException; 9 | use Shaarli\Plugin\Exception\PluginInvalidRouteException; 10 | -------------------------------------------------------------------------------- /src/huginn/app/controllers/logs_controller.rb: -------------------------------------------------------------------------------- 1 | class LogsController < ApplicationController 2 | before_filter :load_agent 3 | 4 | def index 5 | @logs = @agent.logs.all 6 | render :action => :index, :layout => false 7 | end 8 | 9 | def clear 10 | @agent.delete_logs! 11 | index 12 | end 13 | 14 | protected 15 | 16 | def load_agent 17 | @agent = current_user.agents.find(params[:agent_id]) 18 | end 19 | end 20 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20130819160603_create_agent_logs.rb: -------------------------------------------------------------------------------- 1 | class CreateAgentLogs < ActiveRecord::Migration 2 | def change 3 | create_table :agent_logs do |t| 4 | t.integer :agent_id, :null => false 5 | t.text :message, :null => false 6 | t.integer :level, :default => 3, :null => false 7 | t.integer :inbound_event_id 8 | t.integer :outbound_event_id 9 | 10 | t.timestamps 11 | end 12 | end 13 | end 14 | -------------------------------------------------------------------------------- /src/shaarli/application/front/exceptions/LoginBannedException.php: -------------------------------------------------------------------------------- 1 | 'git://github.com/opscode-cookbooks/git.git' 8 | cookbook 'nginx', :git => 'git://github.com/opscode-cookbooks/nginx.git' 9 | cookbook 'mysql', :git => 'git://github.com/opscode-cookbooks/mysql.git' 10 | cookbook 'nodejs', :git => 'git://github.com/mdxp/nodejs-cookbook.git' 11 | -------------------------------------------------------------------------------- /src/net/src/lib/pyelliptic/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 2 | # Author: Yann GUIBET 3 | # Contact: 4 | 5 | __version__ = '1.3' 6 | 7 | __all__ = [ 8 | 'OpenSSL', 9 | 'ECC', 10 | 'Cipher', 11 | 'hmac_sha256', 12 | 'hmac_sha512', 13 | 'pbkdf2' 14 | ] 15 | 16 | from .openssl import OpenSSL 17 | from .ecc import ECC 18 | from .cipher import Cipher 19 | from .hash import hmac_sha256, hmac_sha512, pbkdf2 20 | -------------------------------------------------------------------------------- /src/shaarli/application/front/exceptions/AlreadyInstalledException.php: -------------------------------------------------------------------------------- 1 | {function="str_replace('_', ' ', $key)"} 3 | 4 | 5 | {include="page.footer"} 6 | - 7 | + 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/shaarli/application/api/exceptions/ApiInternalException.php: -------------------------------------------------------------------------------- 1 | buildApiResponse(500); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/shaarli/application/bookmark/exception/BookmarkNotFoundException.php: -------------------------------------------------------------------------------- 1 | message = t('The link you are trying to reach does not exist or has been deleted.'); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/shaarli/application/bookmark/exception/InvalidWritableDataException.php: -------------------------------------------------------------------------------- 1 | message = 'Couldn\'t generate bookmark data to store in the datastore. Skipping file writing.'; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/404.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {include="includes"} 5 | 6 | 7 | 10 |
11 |

404 Not found Oh crap!

12 |

{$error_message}

13 |

Would you mind clicking here?

14 |
15 | {include="page.footer"} 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/shaarli/data/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | = 2.4> 3 | Require all denied 4 | 5 | Require all granted 6 | 7 | 8 | 9 | Allow from none 10 | Deny from all 11 | 12 | Allow from all 13 | 14 | 15 | 16 | 17 | 18 | Require all denied 19 | 20 | -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/changetag.html.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/tpl/vintage/changetag.html b/src/shaarli/tpl/vintage/changetag.html (rejected hunks) 2 | @@ -1,8 +1,6 @@ 3 | 4 | 5 | {include="includes"} 6 | - 7 | - 8 | 9 | 10 | 5 | 6 | - 7 | - 8 | - 9 | + 10 | -------------------------------------------------------------------------------- /src/net/src/lib/PySocks/test/socks4server.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | from twisted.internet import reactor 3 | from twisted.protocols.socks import SOCKSv4Factory 4 | 5 | def run_proxy(): 6 | reactor.listenTCP(1080, SOCKSv4Factory("/dev/null"), interface="127.0.0.1") 7 | try: 8 | reactor.run() 9 | except (KeyboardInterrupt, SystemExit): 10 | reactor.stop() 11 | 12 | if __name__ == "__main__": 13 | print "Running SOCKS4 proxy server" 14 | run_proxy() 15 | -------------------------------------------------------------------------------- /src/shaarli/tpl/default/404.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {include="includes"} 5 | 6 | 7 | -------------------------------------------------------------------------------- /src/huginn/app/views/user_credentials/new.html.erb: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 9 | 10 | <%= render 'form' %> 11 | 12 |
13 | <%= link_to ' Back'.html_safe, user_credentials_path, class: "btn" %> 14 |
15 |
16 |
17 |
-------------------------------------------------------------------------------- /src/net/plugins/OptionalManager/languages/hu.json: -------------------------------------------------------------------------------- 1 | { 2 | "Pinned %s files": "%s fájl rögzítve", 3 | "Removed pin from %s files": "%s fájl rögzítés eltávolítva", 4 | "You started to help distribute %s.
Directory: %s": "Új segítség a terjesztésben: %s.
Könyvtár: %s", 5 | "Help distribute all new optional files on site %s": "Segítség az összes új opcionális fájl terjesztésében az %s oldalon", 6 | "Yes, I want to help!": "Igen, segíteni akarok!" 7 | } 8 | -------------------------------------------------------------------------------- /src/net/src/lib/geventwebsocket/exceptions.py: -------------------------------------------------------------------------------- 1 | from socket import error as socket_error 2 | 3 | 4 | class WebSocketError(socket_error): 5 | """ 6 | Base class for all websocket errors. 7 | """ 8 | 9 | 10 | class ProtocolError(WebSocketError): 11 | """ 12 | Raised if an error occurs when de/encoding the websocket protocol. 13 | """ 14 | 15 | 16 | class FrameTooLargeException(ProtocolError): 17 | """ 18 | Raised if a frame is received that is too large. 19 | """ 20 | -------------------------------------------------------------------------------- /src/shaarli/application/config/exception/PluginConfigOrderException.php: -------------------------------------------------------------------------------- 1 | message = t('An error occurred while trying to save plugins loading order.'); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/huginn/app/views/devise/mailer/reset_password_instructions.html.erb: -------------------------------------------------------------------------------- 1 |

Hello <%= @resource.email %>!

2 | 3 |

Someone has requested a link to change your password, and you can do this through the link below.

4 | 5 |

<%= link_to 'Change my password', edit_password_url(@resource, :reset_password_token => @resource.reset_password_token) %>

6 | 7 |

If you didn't request this, please ignore this email.

8 |

Your password won't change until you access the link above and create a new one.

9 | -------------------------------------------------------------------------------- /src/net/.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | 5 | # Log files 6 | **/*.log 7 | 8 | # Hidden files 9 | .* 10 | !/.gitignore 11 | !/.travis.yml 12 | 13 | 14 | # Data dir 15 | data/* 16 | *.db 17 | 18 | # Virtualenv 19 | env/* 20 | 21 | # Tor, downloaded automatically 22 | tools/tor/data 23 | tools/tor/*exe 24 | tools/tor/*dll 25 | 26 | # PhantomJS, downloaded manually for unit tests 27 | tools/phantomjs 28 | 29 | # ZeroNet config file 30 | zeronet.conf 31 | -------------------------------------------------------------------------------- /src/net/plugins/OptionalManager/languages/fr.json: -------------------------------------------------------------------------------- 1 | { 2 | "Pinned %s files": "Fichiers %s épinglés", 3 | "Removed pin from %s files": "Fichiers %s ne sont plus épinglés", 4 | "You started to help distribute %s.
Directory: %s": "Vous avez commencé à aider à distribuer %s.
Dossier : %s", 5 | "Help distribute all new optional files on site %s": "Aider à distribuer tous les fichiers optionnels du site %s", 6 | "Yes, I want to help!": "Oui, je veux aider !" 7 | } 8 | -------------------------------------------------------------------------------- /src/net/plugins/OptionalManager/languages/pt-br.json: -------------------------------------------------------------------------------- 1 | { 2 | "Pinned %s files": "Arquivos %s fixados", 3 | "Removed pin from %s files": "Arquivos %s não estão fixados", 4 | "You started to help distribute %s.
Directory: %s": "Você começou a ajudar a distribuir %s.
Pasta: %s", 5 | "Help distribute all new optional files on site %s": "Ajude a distribuir todos os novos arquivos opcionais no site %s", 6 | "Yes, I want to help!": "Sim, eu quero ajudar!" 7 | } 8 | -------------------------------------------------------------------------------- /src/huginn/Procfile: -------------------------------------------------------------------------------- 1 | # Procfile for development: 2 | web: bundle exec rails server 3 | schedule: bundle exec rails runner bin/schedule.rb 4 | twitter: bundle exec rails runner bin/twitter_stream.rb 5 | dj: bundle exec script/delayed_job run 6 | 7 | # Possible Profile configuration for production: 8 | # web: bundle exec unicorn -c config/unicorn/production.rb 9 | # schedule: bundle exec rails runner bin/schedule.rb 10 | # twitter: bundle exec rails runner bin/twitter_stream.rb 11 | # dj: bundle exec script/delayed_job run -------------------------------------------------------------------------------- /src/huginn/db/migrate/20121216025930_create_events.rb: -------------------------------------------------------------------------------- 1 | class CreateEvents < ActiveRecord::Migration 2 | def change 3 | create_table :events do |t| 4 | t.integer :user_id 5 | t.integer :agent_id 6 | t.decimal :lat, :precision => 15, :scale => 10 7 | t.decimal :lng, :precision => 15, :scale => 10 8 | t.text :payload 9 | 10 | t.timestamps 11 | end 12 | 13 | add_index :events, [:user_id, :created_at] 14 | add_index :events, [:agent_id, :created_at] 15 | end 16 | end 17 | -------------------------------------------------------------------------------- /src/net/plugins/OptionalManager/languages/es.json: -------------------------------------------------------------------------------- 1 | { 2 | "Pinned %s files": "Archivos %s fijados", 3 | "Removed pin from %s files": "Archivos %s que no estan fijados", 4 | "You started to help distribute %s.
Directory: %s": "Tu empezaste a ayudar a distribuir %s.
Directorio: %s", 5 | "Help distribute all new optional files on site %s": "Ayude a distribuir todos los archivos opcionales en el sitio %s", 6 | "Yes, I want to help!": "¡Si, yo quiero ayudar!" 7 | } 8 | -------------------------------------------------------------------------------- /src/huginn/bin/decrypt_backup.rb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby 2 | 3 | # If you're using the backup gem, described on the Huginn wiki and at doc/deployment/backup, then you can use this 4 | # utility to decrypt backups. 5 | 6 | in_file = ARGV.shift 7 | out_file = ARGV.shift || "decrypted_backup.tar" 8 | 9 | puts "About to decrypt #{in_file} and write it to #{out_file}." 10 | 11 | cmd = "bundle exec backup decrypt --encryptor openssl --base64 --salt --in #{in_file} --out #{out_file}" 12 | puts "Executing: #{cmd}" 13 | puts `#{cmd}` 14 | -------------------------------------------------------------------------------- /src/huginn/spec/support/spec_helpers.rb: -------------------------------------------------------------------------------- 1 | module SpecHelpers 2 | def build_events(options = {}) 3 | options[:values].map.with_index do |tuple, index| 4 | event = Event.new 5 | event.agent = agents(:bob_weather_agent) 6 | event.payload = (options[:pattern] || {}).dup.merge((options[:keys].zip(tuple)).inject({}) { |memo, (key, value)| memo[key] = value; memo }) 7 | event.created_at = (100 - index).hours.ago 8 | event.updated_at = (100 - index).hours.ago 9 | event 10 | end 11 | end 12 | end -------------------------------------------------------------------------------- /src/shaarli/doc/md/Browsing-and-searching.md.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/doc/md/Browsing-and-searching.md b/src/shaarli/doc/md/Browsing-and-searching.md (rejected hunks) 2 | @@ -20,4 +20,4 @@ To search for links that are not tagged, enter `""` in the tag search field. 3 | 4 | ## Filtering RSS feeds/Picture wall 5 | 6 | -RSS feeds can also be restricted to only return items matching a text/tag search: see [RSS feeds](RSS feeds). 7 | +RSS feeds can also be restricted to only return items matching a text/tag search: see [RSS feeds](RSS-feeds). 8 | -------------------------------------------------------------------------------- /src/shaarli/plugins/readitlater/readitlater.default.css: -------------------------------------------------------------------------------- 1 | .linklist-item.readitlater-unread::after { 2 | display: block; 3 | position: absolute; 4 | top: 0; 5 | right: 0; 6 | z-index: 51; 7 | background: red; 8 | width: 2px; 9 | height: 100%; 10 | content: ''; 11 | } 12 | 13 | .readitlater-unread .label-unread { 14 | color: red; 15 | border: 1px solid red; 16 | text-decoration: none; 17 | } 18 | 19 | .readitlater-unread .readitlater-toggle .fa-eye-slash { 20 | color: red; 21 | } 22 | -------------------------------------------------------------------------------- /src/huginn/spec/fixtures/user_credentials.yml: -------------------------------------------------------------------------------- 1 | bob_aws_key: 2 | user: bob 3 | credential_name: aws_key 4 | credential_value: 2222222222-bob 5 | mode: text 6 | bob_aws_secret: 7 | user: bob 8 | credential_name: aws_secret 9 | credential_value: 1111111111-bob 10 | mode: text 11 | jane_aws_key: 12 | user: jane 13 | credential_name: aws_key 14 | credential_value: 2222222222-jane 15 | mode: text 16 | jane_aws_secret: 17 | user: jane 18 | credential_name: aws_secret 19 | credential_value: 1111111111-jabe 20 | mode: text -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/addlink.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {include="includes"} 4 | 5 | 14 | {include="page.footer"} 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/languages/zh.json: -------------------------------------------------------------------------------- 1 | { 2 | "ZeroNet Twitter": "ZeroNet Twitter", 3 | "ZeroNet Reddit": "ZeroNet Reddit", 4 | "ZeroNet Github": "ZeroNet Github", 5 | "Report bug/request feature": "反馈问题/请求功能", 6 | "!Open ZeroNet": "!打开 ZeroNet", 7 | "Quit": "退出", 8 | "(active)": "(主动模式)", 9 | "(passive)": "(被动模式)", 10 | "Connections: %s": "连接数: %s", 11 | "Received: %.2f MB | Sent: %.2f MB": "已接收: %.2f MB | 已发送: %.2f MB", 12 | "Show console window": "显示控制台窗口", 13 | "Start ZeroNet when Windows starts": "在 Windows 启动时运行 ZeroNet" 14 | } 15 | -------------------------------------------------------------------------------- /src/shaarli/plugins/qrcode/qrcode.css: -------------------------------------------------------------------------------- 1 | .linkqrcode { 2 | display: inline; 3 | position: relative; 4 | } 5 | 6 | #permalinkQrcode { 7 | position: absolute; 8 | z-index: 200; 9 | padding: 20px; 10 | width: 220px; 11 | height: 220px; 12 | background-color: #ffffff; 13 | border: 1px solid black; 14 | top: -110px; 15 | left: -110px; 16 | text-align: center; 17 | font-size: 8pt; 18 | box-shadow: 2px 2px 20px 2px #333333; 19 | } 20 | 21 | #permalinkQrcode img { 22 | margin-bottom: 5px; 23 | } 24 | -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/languages/zh-tw.json: -------------------------------------------------------------------------------- 1 | { 2 | "ZeroNet Twitter": "ZeroNet Twitter", 3 | "ZeroNet Reddit": "ZeroNet Reddit", 4 | "ZeroNet Github": "ZeroNet Github", 5 | "Report bug/request feature": "回饋问题/請求功能", 6 | "!Open ZeroNet": "!開啟 ZeroNet", 7 | "Quit": "退出", 8 | "(active)": "(主動模式)", 9 | "(passive)": "(被動模式)", 10 | "Connections: %s": "連線數: %s", 11 | "Received: %.2f MB | Sent: %.2f MB": "已收到: %.2f MB | 已傳送: %.2f MB", 12 | "Show console window": "顯示控制臺窗體", 13 | "Start ZeroNet when Windows starts": "在 Windows 啟動時執行 ZeroNet" 14 | } 15 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/test_include/content.json: -------------------------------------------------------------------------------- 1 | { 2 | "address": "1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT", 3 | "files": { 4 | "data.json": { 5 | "sha512": "369d4e780cc80504285f13774ca327fe725eed2d813aad229e62356b07365906", 6 | "size": 505 7 | } 8 | }, 9 | "inner_path": "data/test_include/content.json", 10 | "modified": 1470340816.513, 11 | "signs": { 12 | "1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT": "GxF2ZD0DaMx+CuxafnnRx+IkWTrXubcmTHaJIPyemFpzCvbSo6DyjstN8T3qngFhYIZI/MkcG4ogStG0PLv6p3w=" 13 | } 14 | } -------------------------------------------------------------------------------- /src/net/src/lib/PySocks/setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | from distutils.core import setup 3 | 4 | VERSION = "1.5.3" 5 | 6 | setup( 7 | name = "PySocks", 8 | version = VERSION, 9 | description = "A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information.", 10 | url = "https://github.com/Anorov/PySocks", 11 | license = "BSD", 12 | author = "Anorov", 13 | author_email = "anorov.vorona@gmail.com", 14 | keywords = ["socks", "proxy"], 15 | py_modules=["socks", "sockshandler"] 16 | ) 17 | 18 | -------------------------------------------------------------------------------- /src/shaarli/application/Updater.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/Updater.php b/src/shaarli/application/Updater.php (rejected hunks) 2 | @@ -436,6 +436,14 @@ public function updateMethodResetHistoryFile() 3 | } 4 | return true; 5 | } 6 | + 7 | + /** 8 | + * Save the datastore -> the link order is now applied when links are saved. 9 | + */ 10 | + public function updateMethodReorderDatastore() 11 | + { 12 | + $this->linkDB->save($this->conf->get('resource.page_cache')); 13 | + } 14 | } 15 | 16 | /** 17 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20120919061122_enable_lockable_strategy_for_devise.rb: -------------------------------------------------------------------------------- 1 | class EnableLockableStrategyForDevise < ActiveRecord::Migration 2 | def up 3 | add_column :users, :failed_attempts, :integer, :default => 0 4 | add_column :users, :unlock_token, :string 5 | add_column :users, :locked_at, :datetime 6 | 7 | add_index :users, :unlock_token, :unique => true 8 | end 9 | 10 | def down 11 | remove_column :users, :failed_attempts 12 | remove_column :users, :unlock_token 13 | remove_column :users, :locked_at 14 | end 15 | end 16 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20120919063304_add_username_to_users.rb: -------------------------------------------------------------------------------- 1 | class AddUsernameToUsers < ActiveRecord::Migration 2 | class User < ActiveRecord::Base 3 | end 4 | 5 | def up 6 | add_column :users, :username, :string 7 | 8 | User.find_each do |user| 9 | user.update_attribute :username, user.email.gsub(/@.*$/, '') 10 | end 11 | 12 | change_column :users, :username, :string, :null => false 13 | add_index :users, :username, :unique => true 14 | end 15 | 16 | def down 17 | remove_column :users, :username 18 | end 19 | end 20 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20140127164931_change_handler_to_medium_text.rb: -------------------------------------------------------------------------------- 1 | # Increase handler size to 16MB (consistent with events.payload) 2 | 3 | class ChangeHandlerToMediumText < ActiveRecord::Migration 4 | def up 5 | if mysql? 6 | change_column :delayed_jobs, :handler, :text, :limit => 16777215 7 | end 8 | end 9 | 10 | def down 11 | if mysql? 12 | change_column :delayed_jobs, :handler, :text, :limit => 65535 13 | end 14 | end 15 | 16 | def mysql? 17 | ActiveRecord::Base.connection.adapter_name =~ /mysql/i 18 | end 19 | end -------------------------------------------------------------------------------- /src/huginn/app/views/agents/new.html.erb: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 10 | 11 | <%= render 'form' %> 12 | 13 |
14 | <%= link_to ' Back'.html_safe, agents_path, class: "btn" %> 15 |
16 |
17 |
18 |
-------------------------------------------------------------------------------- /src/huginn/config/initializers/wrap_parameters.rb: -------------------------------------------------------------------------------- 1 | # Be sure to restart your server when you modify this file. 2 | # 3 | # This file contains settings for ActionController::ParamsWrapper which 4 | # is enabled by default. 5 | 6 | # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array. 7 | ActiveSupport.on_load(:action_controller) do 8 | wrap_parameters format: [:json] 9 | end 10 | 11 | # Disable root element in JSON by default. 12 | ActiveSupport.on_load(:active_record) do 13 | self.include_root_in_json = false 14 | end 15 | -------------------------------------------------------------------------------- /src/shaarli/application/front/exceptions/OpenShaarliPasswordException.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {include="includes"} 5 | 6 | 7 | 10 |
11 |

Error

12 |

{$message}

13 | 14 | {if="!empty($stacktrace)"} 15 |
16 |
17 |             {$stacktrace}
18 |         
19 | {/if} 20 | 21 |

Would you mind clicking here?

22 |
23 | {include="page.footer"} 24 | 25 | 26 | -------------------------------------------------------------------------------- /src/huginn/spec/lib/inheritance_tracking_spec.rb: -------------------------------------------------------------------------------- 1 | require 'spec_helper' 2 | require 'inheritance_tracking' 3 | 4 | describe InheritanceTracking do 5 | class Class1 6 | include InheritanceTracking 7 | end 8 | 9 | class Class2 < Class1; end 10 | class Class3 < Class1; end 11 | 12 | it "tracks subclasses" do 13 | Class1.subclasses.should == [Class2, Class3] 14 | end 15 | 16 | it "can be temporarily overridden with #with_subclasses" do 17 | Class1.with_subclasses(Class2) do 18 | Class1.subclasses.should == [Class2] 19 | end 20 | end 21 | end -------------------------------------------------------------------------------- /src/huginn/spec/models/users_spec.rb: -------------------------------------------------------------------------------- 1 | require 'spec_helper' 2 | 3 | describe User do 4 | describe "validations" do 5 | describe "invitation_code" do 6 | it "only accepts valid invitation codes" do 7 | User::INVITATION_CODES.each do |v| 8 | should allow_value(v).for(:invitation_code) 9 | end 10 | end 11 | 12 | it "can reject invalid invitation codes" do 13 | %w['foo', 'bar'].each do |v| 14 | should_not allow_value(v).for(:invitation_code) 15 | end 16 | end 17 | end 18 | end 19 | end 20 | -------------------------------------------------------------------------------- /src/net/src/lib/geventwebsocket/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = (0, 10, 1, 'final', 0) 2 | 3 | __all__ = [ 4 | 'WebSocketApplication', 5 | 'Resource', 6 | 'WebSocketServer', 7 | 'WebSocketError', 8 | 'get_version' 9 | ] 10 | 11 | 12 | def get_version(*args, **kwargs): 13 | from .utils import get_version 14 | return get_version(*args, **kwargs) 15 | 16 | try: 17 | from .resource import WebSocketApplication, Resource 18 | from .server import WebSocketServer 19 | from .exceptions import WebSocketError 20 | except ImportError: 21 | pass 22 | -------------------------------------------------------------------------------- /src/shaarli/application/bookmark/LinkDB.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/bookmark/LinkDB.php b/src/shaarli/application/bookmark/LinkDB.php (rejected hunks) 2 | @@ -335,6 +337,8 @@ private function read() 3 | $link['real_url'] = $link['url']; 4 | } 5 | 6 | + $link['sticky'] = isset($link['sticky']) ? $link['sticky'] : false; 7 | + 8 | // To be able to load links before running the update, and prepare the update 9 | if (!isset($link['created'])) { 10 | $link['id'] = $link['linkdate']; 11 | -------------------------------------------------------------------------------- /src/shaarli/application/updater/Updater.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/updater/Updater.php b/src/shaarli/application/updater/Updater.php (rejected hunks) 2 | @@ -152,7 +152,7 @@ public function updateMethodMigrateExistingNotesUrl(): bool 3 | { 4 | $updated = false; 5 | 6 | - foreach ($this->bookmarkService->search() as $bookmark) { 7 | + foreach ($this->bookmarkService->search()->getBookmarks() as $bookmark) { 8 | if ( 9 | $bookmark->isNote() 10 | && startsWith($bookmark->getUrl(), '?') 11 | -------------------------------------------------------------------------------- /src/huginn/.travis.yml: -------------------------------------------------------------------------------- 1 | language: ruby 2 | bundler_args: --without development production 3 | rvm: 4 | - 2.0.0 5 | - 2.1.0 6 | - 1.9.3 7 | before_script: 8 | - mysql -e 'create database huginn_test;' 9 | - bundle exec rake db:migrate db:test:prepare 10 | script: "bundle exec rake" 11 | notifications: 12 | irc: 13 | channels: 14 | - "chat.freenode.net#huginn" 15 | template: 16 | - "%{repository}#%{build_number} (%{branch} - %{commit} : %{author}): %{message}" 17 | - "Change view : %{compare_url}" 18 | - "Build details : %{build_url}" 19 | -------------------------------------------------------------------------------- /src/huginn/app/models/link.rb: -------------------------------------------------------------------------------- 1 | # A Link connects Agents in a directed Event flow from the `source` to the `receiver`. 2 | class Link < ActiveRecord::Base 3 | attr_accessible :source_id, :receiver_id 4 | 5 | belongs_to :source, :class_name => "Agent", :inverse_of => :links_as_source 6 | belongs_to :receiver, :class_name => "Agent", :inverse_of => :links_as_receiver 7 | 8 | before_create :store_event_id_at_creation 9 | 10 | def store_event_id_at_creation 11 | self.event_id_at_creation = source.events.limit(1).reorder("id desc").pluck(:id).first || 0 12 | end 13 | end 14 | -------------------------------------------------------------------------------- /src/shaarli/application/bookmark/exception/NotWritableDataStoreException.php: -------------------------------------------------------------------------------- 1 | message = 'Couldn\'t load data from the data store file "' . $dataStore . '". ' . 15 | 'Your data might be corrupted, or your file isn\'t readable.'; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/huginn/lib/inheritance_tracking.rb: -------------------------------------------------------------------------------- 1 | module InheritanceTracking 2 | extend ActiveSupport::Concern 3 | 4 | module ClassMethods 5 | def inherited(subclass) 6 | @subclasses ||= [] 7 | @subclasses << subclass 8 | @subclasses.uniq! 9 | super 10 | end 11 | 12 | def subclasses 13 | @subclasses 14 | end 15 | 16 | def with_subclasses(*subclasses) 17 | original_subclasses = @subclasses 18 | @subclasses = subclasses.flatten 19 | yield 20 | ensure 21 | @subclasses = original_subclasses 22 | end 23 | end 24 | end -------------------------------------------------------------------------------- /src/net/src/lib/PySocks/test/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | shopt -s expand_aliases 3 | type python2 >/dev/null 2>&1 || alias python2='python' 4 | 5 | echo "Starting proxy servers..." 6 | python2 socks4server.py > /dev/null & 7 | python2 httpproxy.py > /dev/null & 8 | ./mocks start 9 | 10 | sleep 2 11 | echo "Python 2.6 tests" 12 | python2.6 sockstest.py 13 | exit 14 | 15 | sleep 2 16 | echo "Python 2.7 tests" 17 | python2.7 sockstest.py 18 | 19 | sleep 2 20 | echo "Python 3.x tests" 21 | python3 sockstest.py 22 | 23 | pkill python2 > /dev/null 24 | ./mocks shutdown 25 | echo "Finished tests" 26 | -------------------------------------------------------------------------------- /src/huginn/app/helpers/application_helper.rb: -------------------------------------------------------------------------------- 1 | module ApplicationHelper 2 | def nav_link(name, path, options = {}) 3 | (<<-HTML).html_safe 4 |
  • 5 | #{link_to name, path} 6 |
  • 7 | HTML 8 | end 9 | 10 | def working(agent) 11 | if agent.working? 12 | 'Yes'.html_safe 13 | else 14 | link_to 'No'.html_safe, agent_path(agent, :tab => (agent.recent_error_logs? ? 'logs' : 'details')) 15 | end 16 | end 17 | end 18 | -------------------------------------------------------------------------------- /src/net/src/lib/opensslVerify/gencert.cmd: -------------------------------------------------------------------------------- 1 | openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -nodes -config openssl.cnf 2 | REM openssl ecparam -name secp521r1 -genkey -param_enc explicit -out key-ecc.pem -config openssl.cnf 3 | 4 | openssl ecparam -name secp256r1 -genkey -out key-ecc.pem 5 | openssl req -new -key key-ecc.pem -x509 -nodes -out cert-ecc.pem -config openssl.cnf 6 | 7 | @echo off 8 | REM openssl ecparam -genkey -name prime256v1 -out key.pem 9 | REM openssl req -new -key key.pem -out csr.pem 10 | REM openssl req -x509 -days 365 -key key.pem -in csr.pem -out certificate.pem -------------------------------------------------------------------------------- /src/shaarli/phpdoc.dist.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | <![CDATA[Shaarli API Reference]]> 4 | 5 | utf8 6 | 7 | FIXME 8 | TODO 9 | WIP 10 | 11 | doc/phpdoc 12 | 13 | 14 | doc/phpdoc 15 | 16 | 17 | index.php 18 | application 19 | plugins 20 | 21 | 22 | -------------------------------------------------------------------------------- /src/shaarli/doc/md/dev/Release-Shaarli.md.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/doc/md/dev/Release-Shaarli.md b/src/shaarli/doc/md/dev/Release-Shaarli.md (rejected hunks) 2 | @@ -64,6 +64,14 @@ git pull upstream master 3 | 4 | # If releasing a new minor version, create a release branch 5 | $ git checkout -b v0.x 6 | +# Otherwise just use the existing one 7 | +$ git checkout v0.x 8 | + 9 | +# Get the latest changes 10 | +$ git merge master 11 | + 12 | +# Check that everything went fine: 13 | +$ make test 14 | 15 | # Bump shaarli_version.php from dev to 0.x.0, **without the v** 16 | $ vim shaarli_version.php 17 | -------------------------------------------------------------------------------- /src/huginn/spec/data_fixtures/adioso_parse.json: -------------------------------------------------------------------------------- 1 | { 2 | "cost_max": null, 3 | "currency": "USD", 4 | "date_end": 1403740799, 5 | "date_start": 1372032000, 6 | "dest_codes": [ 7 | "CGX", 8 | "MDW", 9 | "ORD", 10 | "GYY" 11 | ], 12 | "duration_max": null, 13 | "origin_codes": [ 14 | "PDX", 15 | "SLE" 16 | ], 17 | "search_url": "http://api.adioso.com/v2/search/fares?currency=USD&date_end=1403740799&date_start=1372032000&dest_codes=CGX%2CMDW%2CORD%2CGYY&origin_codes=PDX%2CSLE", 18 | "segments_max": null 19 | } 20 | -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/picwall.html.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/tpl/vintage/picwall.html b/src/shaarli/tpl/vintage/picwall.html (rejected hunks) 2 | @@ -1,7 +1,6 @@ 3 | 4 | 5 | {include="includes"} 6 | - 7 | 8 | 9 | 10 | @@ -35,10 +34,6 @@ 11 | 12 | {include="page.footer"} 13 | 14 | - 19 | + 20 | 21 | 22 | -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/languages/tr.json: -------------------------------------------------------------------------------- 1 | { 2 | "ZeroNet Twitter": "ZeroNet Twitter", 3 | "ZeroNet Reddit": "ZeroNet Reddit", 4 | "ZeroNet Github": "ZeroNet Github", 5 | "Report bug/request feature": "Hata bildir/geliştirme taleb et", 6 | "!Open ZeroNet": "!ZeroNet'i Aç", 7 | "Quit": "Kapat", 8 | "(active)": "(aktif)", 9 | "(passive)": "(pasif)", 10 | "Connections: %s": "Bağlantı sayısı: %s", 11 | "Received: %.2f MB | Sent: %.2f MB": "Gelen: %.2f MB | Gönderilen: %.2f MB", 12 | "Show console window": "Konsolu aç", 13 | "Start ZeroNet when Windows starts": "ZeroNet'i açılışta otomatik başlat" 14 | } 15 | -------------------------------------------------------------------------------- /src/net/src/lib/pybitcointools/setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | try: 3 | from setuptools import setup 4 | except ImportError: 5 | from distutils.core import setup 6 | 7 | setup(name='bitcoin', 8 | version='1.1.42', 9 | description='Python Bitcoin Tools', 10 | author='Vitalik Buterin', 11 | author_email='vbuterin@gmail.com', 12 | url='http://github.com/vbuterin/pybitcointools', 13 | packages=['bitcoin'], 14 | scripts=['pybtctool'], 15 | include_package_data=True, 16 | data_files=[("", ["LICENSE"]), ("bitcoin", ["bitcoin/english.txt"])], 17 | ) 18 | -------------------------------------------------------------------------------- /src/shaarli/plugins/isso/isso.html: -------------------------------------------------------------------------------- 1 | 14 |
    15 | -------------------------------------------------------------------------------- /src/huginn/app/models/contact.rb: -------------------------------------------------------------------------------- 1 | # Contacts are used only for the contact form on the Huginn website. If you host a public Huginn instance, you can use 2 | # these to receive messages from visitors. 3 | 4 | class Contact < ActiveRecord::Base 5 | attr_accessible :email, :message, :name 6 | 7 | validates_format_of :email, :with => /\A[A-Z0-9._%+-]+@[A-Z0-9.-]+\.(?:[A-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|asia|jobs|museum)\Z/i 8 | validates_presence_of :name, :message 9 | 10 | after_create :send_contact 11 | 12 | def send_contact 13 | ContactMailer.send_contact(self).deliver 14 | end 15 | end -------------------------------------------------------------------------------- /src/net/plugins/Sidebar/media/Class.coffee: -------------------------------------------------------------------------------- 1 | class Class 2 | trace: true 3 | 4 | log: (args...) -> 5 | return unless @trace 6 | return if typeof console is 'undefined' 7 | args.unshift("[#{@.constructor.name}]") 8 | console.log(args...) 9 | @ 10 | 11 | logStart: (name, args...) -> 12 | return unless @trace 13 | @logtimers or= {} 14 | @logtimers[name] = +(new Date) 15 | @log "#{name}", args..., "(started)" if args.length > 0 16 | @ 17 | 18 | logEnd: (name, args...) -> 19 | ms = +(new Date)-@logtimers[name] 20 | @log "#{name}", args..., "(Done in #{ms}ms)" 21 | @ 22 | 23 | window.Class = Class -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/languages/hu.json: -------------------------------------------------------------------------------- 1 | { 2 | "ZeroNet Twitter": "ZeroNet Twitter", 3 | "ZeroNet Reddit": "ZeroNet Reddit", 4 | "ZeroNet Github": "ZeroNet Github", 5 | "Report bug/request feature": "Hiba bejelentés/ötletek", 6 | "!Open ZeroNet": "!ZeroNet megnyitása", 7 | "Quit": "Kilépés", 8 | "(active)": "(aktív)", 9 | "(passive)": "(passive)", 10 | "Connections: %s": "Kapcsolatok: %s", 11 | "Received: %.2f MB | Sent: %.2f MB": "Fogadott: %.2f MB | Küldött: %.2f MB", 12 | "Show console window": "Parancssor mutatása", 13 | "Start ZeroNet when Windows starts": "ZeroNet indítása a Windows-al együtt" 14 | } 15 | -------------------------------------------------------------------------------- /src/net/src/lib/geventwebsocket/_compat.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import, division, print_function 2 | 3 | import sys 4 | import codecs 5 | 6 | 7 | PY3 = sys.version_info[0] == 3 8 | PY2 = sys.version_info[0] == 2 9 | 10 | 11 | if PY2: 12 | bytes = str 13 | text_type = unicode 14 | string_types = basestring 15 | range_type = xrange 16 | iteritems = lambda x: x.iteritems() 17 | # b = lambda x: x 18 | else: 19 | text_type = str 20 | string_types = str, 21 | range_type = range 22 | iteritems = lambda x: iter(x.items()) 23 | # b = lambda x: codecs.latin_1_encode(x)[0] 24 | -------------------------------------------------------------------------------- /src/shaarli/plugins/readitlater/readitlater.default.js: -------------------------------------------------------------------------------- 1 | (() => { 2 | document.addEventListener('DOMContentLoaded', () => { 3 | const unreadLinks = document.querySelectorAll('.readitlater-unread'); 4 | if (unreadLinks) { 5 | const unreadLabel = document.createElement('span'); 6 | unreadLabel.className = 'label label-unread'; 7 | unreadLabel.innerHTML = ' To Read'; 8 | [...unreadLinks].forEach((element) => { 9 | const button = unreadLabel.cloneNode(true); 10 | element.querySelector('.linklist-item-editbuttons').prepend(button); 11 | }); 12 | } 13 | }); 14 | })(); 15 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20121220053905_create_agents.rb: -------------------------------------------------------------------------------- 1 | class CreateAgents < ActiveRecord::Migration 2 | def change 3 | create_table :agents do |t| 4 | t.integer :user_id 5 | t.text :options 6 | t.string :type 7 | t.string :name 8 | t.string :schedule 9 | t.integer :events_count 10 | t.datetime :last_check_at 11 | t.datetime :last_receive_at 12 | t.integer :last_checked_event_id 13 | 14 | t.timestamps 15 | end 16 | 17 | add_index :agents, [:user_id, :created_at] 18 | add_index :agents, :type 19 | add_index :agents, :schedule 20 | end 21 | end 22 | -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/languages/es.json: -------------------------------------------------------------------------------- 1 | { 2 | "ZeroNet Twitter": "ZeroNet Twitter", 3 | "ZeroNet Reddit": "ZeroNet Reddit", 4 | "ZeroNet Github": "ZeroNet Github", 5 | "Report bug/request feature": "Reportar fallo/sugerir característica", 6 | "!Open ZeroNet": "!Abrir ZeroNet", 7 | "Quit": "Sair", 8 | "(active)": "(activo)", 9 | "(passive)": "(pasivo)", 10 | "Connections: %s": "Conecciones: %s", 11 | "Received: %.2f MB | Sent: %.2f MB": "Recibido: %.2f MB | Enviado: %.2f MB", 12 | "Show console window": "Mostrar consola", 13 | "Start ZeroNet when Windows starts": "Iniciar Zeronet cuando inicie Windows" 14 | } 15 | -------------------------------------------------------------------------------- /src/net/plugins/Trayicon/languages/pt-br.json: -------------------------------------------------------------------------------- 1 | { 2 | "ZeroNet Twitter": "ZeroNet Twitter", 3 | "ZeroNet Reddit": "ZeroNet Reddit", 4 | "ZeroNet Github": "ZeroNet Github", 5 | "Report bug/request feature": "Reportar bug/sugerir recurso", 6 | "!Open ZeroNet": "!Abrir ZeroNet", 7 | "Quit": "Sair", 8 | "(active)": "(ativo)", 9 | "(passive)": "(passivo)", 10 | "Connections: %s": "Conexões: %s", 11 | "Received: %.2f MB | Sent: %.2f MB": "Recebido: %.2f MB | Enviado: %.2f MB", 12 | "Show console window": "Mostrar console", 13 | "Start ZeroNet when Windows starts": "Iniciar o ZeroNet quando o Windows for iniciado" 14 | } 15 | -------------------------------------------------------------------------------- /src/shaarli/application/formatter/BookmarkDefaultFormatter.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/formatter/BookmarkDefaultFormatter.php b/src/shaarli/application/formatter/BookmarkDefaultFormatter.php (rejected hunks) 2 | @@ -12,8 +12,8 @@ 3 | */ 4 | class BookmarkDefaultFormatter extends BookmarkFormatter 5 | { 6 | - public const SEARCH_HIGHLIGHT_OPEN = '||O_HIGHLIGHT'; 7 | - public const SEARCH_HIGHLIGHT_CLOSE = '||C_HIGHLIGHT'; 8 | + public const SEARCH_HIGHLIGHT_OPEN = 'SHAARLI_O_HIGHLIGHT'; 9 | + public const SEARCH_HIGHLIGHT_CLOSE = 'SHAARLI_C_HIGHLIGHT'; 10 | 11 | /** 12 | * @inheritdoc 13 | -------------------------------------------------------------------------------- /src/shaarli/tpl/default/error.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {include="includes"} 5 | 6 | 7 | 5 | {/if} 6 | + 7 | + 8 | + 9 | {if="isLoggedIn()"} 10 | 11 | {/if} 12 | 13 | - 14 | {loop="$plugins_footer.js_files"} 15 | 16 | {/loop} 17 | -------------------------------------------------------------------------------- /src/huginn/config/initializers/inflections.rb: -------------------------------------------------------------------------------- 1 | # Be sure to restart your server when you modify this file. 2 | 3 | # Add new inflection rules using the following format 4 | # (all these examples are active by default): 5 | # ActiveSupport::Inflector.inflections do |inflect| 6 | # inflect.plural /^(ox)$/i, '\1en' 7 | # inflect.singular /^(ox)en/i, '\1' 8 | # inflect.irregular 'person', 'people' 9 | # inflect.uncountable %w( fish sheep ) 10 | # end 11 | # 12 | # These inflection rules are supported but not enabled by default: 13 | # ActiveSupport::Inflector.inflections do |inflect| 14 | # inflect.acronym 'RESTful' 15 | # end 16 | -------------------------------------------------------------------------------- /src/shaarli/phpcs.xml.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/phpcs.xml b/src/shaarli/phpcs.xml (rejected hunks) 2 | @@ -19,5 +19,11 @@ 3 | 4 | index.php 5 | plugins/* 6 | + tests/bootstrap.php 7 | + tests/utils/RainTPL.php 8 | + 9 | + 10 | + 11 | + tests/utils/RainTPL.php 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/huginn/app/views/system_mailer/send_message.html.erb: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | <% if @headline %> 8 |

    <%= @headline %>

    9 | <% end %> 10 | <% @groups.each do |group| %> 11 |
    12 |
    <%= group[:title] %>
    13 | <% group[:entries].each do |entry| %> 14 |
    15 | <%= entry %> 16 |
    17 | <% end %> 18 |
    19 | <% end %> 20 | 21 | -------------------------------------------------------------------------------- /src/shaarli/application/config/exception/MissingFieldConfigException.php: -------------------------------------------------------------------------------- 1 | field = $field; 20 | $this->message = sprintf(t('Configuration value is required for %s'), $this->field); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/net/src/lib/rsa/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2011 Sybren A. Stüvel 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /src/shaarli/application/HttpUtils.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/HttpUtils.php b/src/shaarli/application/HttpUtils.php (rejected hunks) 2 | @@ -76,7 +76,7 @@ function get_http_response($url, $timeout = 30, $maxBytes = 4194304) 3 | curl_setopt($ch, CURLOPT_USERAGENT, $userAgent); 4 | 5 | // Max download size management 6 | - curl_setopt($ch, CURLOPT_BUFFERSIZE, 1024); 7 | + curl_setopt($ch, CURLOPT_BUFFERSIZE, 1024*16); 8 | curl_setopt($ch, CURLOPT_NOPROGRESS, false); 9 | curl_setopt($ch, CURLOPT_PROGRESSFUNCTION, 10 | function($arg0, $arg1, $arg2, $arg3, $arg4 = 0) use ($maxBytes) 11 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/compat/binary.py: -------------------------------------------------------------------------------- 1 | # 2 | # This file is part of pyasn1 software. 3 | # 4 | # Copyright (c) 2005-2017, Ilya Etingof 5 | # License: http://pyasn1.sf.net/license.html 6 | # 7 | from sys import version_info 8 | 9 | if version_info[0:2] < (2, 6): 10 | def bin(value): 11 | bitstring = [] 12 | 13 | while value: 14 | if value & 1 == 1: 15 | bitstring.append('1') 16 | else: 17 | bitstring.append('0') 18 | 19 | value >>= 1 20 | 21 | bitstring.reverse() 22 | 23 | return '0b' + ''.join(bitstring) 24 | else: 25 | bin = bin 26 | -------------------------------------------------------------------------------- /src/shaarli/.travis.yml.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/.travis.yml b/src/shaarli/.travis.yml (rejected hunks) 2 | @@ -2,20 +2,22 @@ sudo: false 3 | dist: trusty 4 | language: php 5 | cache: 6 | + yarn: true 7 | directories: 8 | - $HOME/.composer/cache 9 | + - $HOME/.cache/yarn 10 | php: 11 | - 7.2 12 | - 7.1 13 | - 7.0 14 | - 5.6 15 | install: 16 | - - composer self-update 17 | + - yarn install 18 | - composer install --prefer-dist 19 | - - locale -a 20 | before_script: 21 | - PATH=${PATH//:\.\/node_modules\/\.bin/} 22 | script: 23 | - make clean 24 | - make check_permissions 25 | + - make eslint 26 | - make all_tests 27 | -------------------------------------------------------------------------------- /tools/ildc.js: -------------------------------------------------------------------------------- 1 | var path = require('path'); 2 | 3 | var FIBJS_PATH = path.join(__dirname, `../fibjs/`) 4 | 5 | var parser = require(path.join(FIBJS_PATH, 'tools/util/parser')); 6 | var gen_code = require(path.join(FIBJS_PATH, 'tools/util/gen_code')); 7 | 8 | var idlLang = process.env.FIBJS_IDL_LANG || 'zh-cn' 9 | var fibjs_idlFolder = path.join(FIBJS_PATH, `idl/${idlLang}`); 10 | var idlFolder = path.join(__dirname, `../idl/${idlLang}`); 11 | 12 | var baseCodeFolder = path.join(__dirname, "../include/ifs/"); 13 | 14 | var defs = parser(fibjs_idlFolder); 15 | defs = parser(idlFolder, defs); 16 | 17 | gen_code(defs, baseCodeFolder); 18 | 19 | module.exports = defs; 20 | -------------------------------------------------------------------------------- /src/shaarli/application/plugin/exception/PluginFileNotFoundException.php: -------------------------------------------------------------------------------- 1 | message = sprintf(t('Plugin "%s" files not found.'), $pluginName); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/patch/eosio/public_key.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | 8 | #define private public 9 | #define public_key_legacy_prefix public_key_legacy_prefix_eos 10 | #include 11 | #undef public_key_legacy_prefix 12 | #undef private 13 | 14 | namespace fc { 15 | namespace crypto { 16 | namespace config { 17 | extern const char* public_key_legacy_prefix; 18 | }; 19 | }; 20 | }; 21 | #define constexpr 22 | 23 | #include -------------------------------------------------------------------------------- /src/shaarli/application/plugin/exception/PluginInvalidRouteException.php: -------------------------------------------------------------------------------- 1 | message = 'trying to register invalid route.'; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/net/.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ### Step 1: Please describe your environment 2 | 3 | * ZeroNet version: _____ 4 | * Operating system: _____ 5 | * Web browser: _____ 6 | * Tor status: not available/always/disabled 7 | * Opened port: yes/no 8 | * Special configuration: ____ 9 | 10 | ### Step 2: Describe the problem: 11 | 12 | #### Steps to reproduce: 13 | 14 | 1. _____ 15 | 2. _____ 16 | 3. _____ 17 | 18 | #### Observed Results: 19 | 20 | * What happened? This could be a screenshot, a description, log output (you can send log/debug.log file to hello@zeronet.io if necessary), etc. 21 | 22 | #### Expected Results: 23 | 24 | * What did you expect to happen? 25 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/users/1C5sgvWaSgfaTpV5kjBCnCiKtENNMYo69q/content.json: -------------------------------------------------------------------------------- 1 | { 2 | "cert_auth_type": "web", 3 | "cert_sign": "G4YB7y749GI6mJboyI7cNNfyMwOS0rcVXLmgq8qmCC4TCaRqup3TGWm8hzeru7+B5iXhq19Ruz286bNVKgNbnwU=", 4 | "cert_user_id": "newzeroid@zeroid.bit", 5 | "files": { 6 | "data.json": { 7 | "sha512": "2378ef20379f1db0c3e2a803bfbfda2b68515968b7e311ccc604406168969d34", 8 | "size": 161 9 | } 10 | }, 11 | "modified": 1432554679.913, 12 | "signs": { 13 | "1C5sgvWaSgfaTpV5kjBCnCiKtENNMYo69q": "GzX/Ht6ms1dOnqB3kVENvDnxpH+mqA0Zlg3hWy0iwgxpyxWcA4zgmwxcEH41BN9RrvCaxgSd2m1SG1/8qbQPzDY=" 14 | } 15 | } -------------------------------------------------------------------------------- /src/shaarli/application/netscape/NetscapeBookmarkUtils.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/netscape/NetscapeBookmarkUtils.php b/src/shaarli/application/netscape/NetscapeBookmarkUtils.php (rejected hunks) 2 | @@ -64,7 +64,7 @@ public function filterAndFormat( 3 | } 4 | 5 | $bookmarkLinks = []; 6 | - foreach ($this->bookmarkService->search([], $selection) as $bookmark) { 7 | + foreach ($this->bookmarkService->search([], $selection)->getBookmarks() as $bookmark) { 8 | $link = $formatter->format($bookmark); 9 | $link['taglist'] = implode(',', $bookmark->getTags()); 10 | if ($bookmark->isNote() && $prependNoteUrl) { 11 | -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/changepassword.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {include="includes"} 4 | 5 | 13 | {include="page.footer"} 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/net/src/lib/geventwebsocket/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2011-2017 Jeffrey Gelens 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/tools.html.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/tpl/vintage/tools.html b/src/shaarli/tpl/vintage/tools.html (rejected hunks) 2 | @@ -81,9 +81,9 @@ 3 | author: "Shaarli", 4 | version: "1.0.0", 5 | 6 | - iconURL: baseURL + "/images/favicon.ico", 7 | - icon32URL: baseURL + "/images/favicon.ico", 8 | - icon64URL: baseURL + "/images/favicon.ico", 9 | + iconURL: baseURL + "/img/favicon.ico", 10 | + icon32URL: baseURL + "/img/favicon.ico", 11 | + icon64URL: baseURL + "/img/favicon.ico", 12 | 13 | shareURL: baseURL + "{noparse}?post=%{url}&title=%{title}&description=%{text}&source=firefoxsocialapi{/noparse}", 14 | homepageURL: baseURL 15 | -------------------------------------------------------------------------------- /src/huginn/app/views/agents/edit.html.erb: -------------------------------------------------------------------------------- 1 |
    2 |
    3 |
    4 | 10 | 11 | <%= render 'form' %> 12 | 13 |
    14 | <%= link_to ' Back'.html_safe, agents_path, class: "btn" %> 15 | <%= link_to ' Show'.html_safe, agent_path(@agent), class: "btn" %> 16 |
    17 |
    18 |
    19 |
    -------------------------------------------------------------------------------- /src/net/src/Ui/media/WrapperZeroFrame.coffee: -------------------------------------------------------------------------------- 1 | class WrapperZeroFrame 2 | constructor: (wrapper) -> 3 | @wrapperCmd = wrapper.cmd 4 | @wrapperResponse = wrapper.ws.response 5 | console.log "WrapperZeroFrame", wrapper 6 | 7 | cmd: (cmd, params={}, cb=null) => 8 | @wrapperCmd(cmd, params, cb) 9 | 10 | response: (to, result) => 11 | @wrapperResponse(to, result) 12 | 13 | isProxyRequest: -> 14 | return window.location.pathname == "/" 15 | 16 | certSelectGotoSite: (elem) => 17 | href = $(elem).attr("href") 18 | if @isProxyRequest() # Fix for proxy request 19 | $(elem).attr("href", "http://zero#{href}") 20 | 21 | 22 | window.zeroframe = new WrapperZeroFrame(window.wrapper) 23 | -------------------------------------------------------------------------------- /src/huginn/app/views/home/_signed_out_index.html.erb: -------------------------------------------------------------------------------- 1 |
    2 |
    3 |
    4 |

    Your agents are standing by

    5 |

    Huginn monitors the world and acts on your behalf.

    6 | 7 | <%= link_to "Login", new_user_session_path, :class => "btn btn-large" %> 8 | <%= link_to "Signup", new_user_registration_path, :class => "btn btn-primary btn-large" %> 9 |
    10 |
    11 | <%= image_tag 'odin.jpg', :class => 'img-rounded', :title => "Wägner, Wilhelm. 1882. Nordisch-germanische Götter und Helden. Otto Spamer, Leipzig & Berlin. Page 7." %> 12 |
    13 |
    14 |
    15 | -------------------------------------------------------------------------------- /src/net/src/lib/pyasn1/codec/ber/eoo.py: -------------------------------------------------------------------------------- 1 | # 2 | # This file is part of pyasn1 software. 3 | # 4 | # Copyright (c) 2005-2017, Ilya Etingof 5 | # License: http://pyasn1.sf.net/license.html 6 | # 7 | from pyasn1.type import base, tag 8 | 9 | 10 | class EndOfOctets(base.AbstractSimpleAsn1Item): 11 | defaultValue = 0 12 | tagSet = tag.initTagSet( 13 | tag.Tag(tag.tagClassUniversal, tag.tagFormatSimple, 0x00) 14 | ) 15 | 16 | _instance = None 17 | 18 | def __new__(cls, *args): 19 | if cls._instance is None: 20 | cls._instance = object.__new__(cls, *args) 21 | 22 | return cls._instance 23 | 24 | 25 | endOfOctets = EndOfOctets() 26 | -------------------------------------------------------------------------------- /src/shaarli/application/front/controller/visitor/BookmarkListController.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/front/controller/visitor/BookmarkListController.php b/src/shaarli/application/front/controller/visitor/BookmarkListController.php (rejected hunks) 2 | @@ -36,7 +36,6 @@ public function index(Request $request, Response $response): Response 3 | 4 | $searchTags = normalize_spaces($request->getParam('searchtags') ?? ''); 5 | $searchTerm = escape(normalize_spaces($request->getParam('searchterm') ?? '')); 6 | - ; 7 | 8 | // Filter bookmarks according search parameters. 9 | $visibility = $this->container->sessionManager->getSessionParameter('visibility'); 10 | -------------------------------------------------------------------------------- /src/shaarli/index.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/index.php b/src/shaarli/index.php (rejected hunks) 2 | @@ -87,7 +88,17 @@ 3 | 4 | $loginManager->checkLoginState(client_ip_id($_SERVER)); 5 | 6 | -$containerBuilder = new ContainerBuilder($conf, $sessionManager, $cookieManager, $loginManager, $logger); 7 | +$pluginManager = new PluginManager($conf); 8 | +$pluginManager->load($conf->get('general.enabled_plugins', [])); 9 | + 10 | +$containerBuilder = new ContainerBuilder( 11 | + $conf, 12 | + $sessionManager, 13 | + $cookieManager, 14 | + $loginManager, 15 | + $pluginManager, 16 | + $logger 17 | +); 18 | $container = $containerBuilder->build(); 19 | $app = new App($container); 20 | 21 | -------------------------------------------------------------------------------- /src/shaarli/application/front/exceptions/ShaarliFrontException.php: -------------------------------------------------------------------------------- 1 | = 4 ORDER BY id DESC LIMIT 1)" 8 | end 9 | 10 | def down 11 | remove_column :agents, :last_event_at 12 | remove_column :agents, :last_error_log_at 13 | end 14 | end 15 | -------------------------------------------------------------------------------- /src/shaarli/application/api/exceptions/ApiLinkNotFoundException.php: -------------------------------------------------------------------------------- 1 | message = 'Link not found'; 20 | } 21 | 22 | /** 23 | * {@inheritdoc} 24 | */ 25 | public function getApiResponse() 26 | { 27 | return $this->buildApiResponse(404); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/shaarli/application/legacy/LegacyLinkDB.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/legacy/LegacyLinkDB.php b/src/shaarli/application/legacy/LegacyLinkDB.php (rejected hunks) 2 | @@ -310,7 +312,7 @@ private function read() 3 | 4 | $link['sticky'] = isset($link['sticky']) ? $link['sticky'] : false; 5 | 6 | - // To be able to load links before running the update, and prepare the update 7 | + // To be able to load bookmarks before running the update, and prepare the update 8 | if (!isset($link['created'])) { 9 | $link['id'] = $link['linkdate']; 10 | $link['created'] = DateTime::createFromFormat(self::LINK_DATE_FORMAT, $link['linkdate']); 11 | -------------------------------------------------------------------------------- /src/shaarli/application/api/exceptions/ApiTagNotFoundException.php: -------------------------------------------------------------------------------- 1 | message = 'Tag not found'; 20 | } 21 | 22 | /** 23 | * {@inheritdoc} 24 | */ 25 | public function getApiResponse() 26 | { 27 | return $this->buildApiResponse(404); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20130126080736_change_memory_to_long_text.rb: -------------------------------------------------------------------------------- 1 | # PG allows arbitrarily long text fields but MySQL has default limits. Make those limits larger if we're using MySQL. 2 | 3 | class ChangeMemoryToLongText < ActiveRecord::Migration 4 | def up 5 | if mysql? 6 | change_column :agents, :memory, :text, :limit => 4294967295 7 | change_column :events, :payload, :text, :limit => 16777215 8 | end 9 | end 10 | 11 | def down 12 | if mysql? 13 | change_column :agents, :memory, :text, :limit => 65535 14 | change_column :events, :payload, :text, :limit => 65535 15 | end 16 | end 17 | 18 | def mysql? 19 | ActiveRecord::Base.connection.adapter_name =~ /mysql/i 20 | end 21 | end 22 | -------------------------------------------------------------------------------- /src/huginn/db/migrate/20140213053001_add_event_id_at_creation_to_links.rb: -------------------------------------------------------------------------------- 1 | class AddEventIdAtCreationToLinks < ActiveRecord::Migration 2 | def up 3 | add_column :links, :event_id_at_creation, :integer, :null => false, :default => 0 4 | 5 | execute <<-SQL 6 | UPDATE #{ActiveRecord::Base.connection.quote_table_name('links')} 7 | SET event_id_at_creation = ( 8 | SELECT #{ActiveRecord::Base.connection.quote_column_name('id')} 9 | FROM #{ActiveRecord::Base.connection.quote_table_name('events')} 10 | WHERE events.agent_id = links.source_id ORDER BY events.id DESC limit 1 11 | ) 12 | SQL 13 | end 14 | 15 | def down 16 | remove_column :links, :event_id_at_creation 17 | end 18 | end 19 | -------------------------------------------------------------------------------- /src/net/plugins/Sidebar/maxminddb/compat.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | # pylint: skip-file 4 | 5 | if sys.version_info[0] == 2: 6 | import ipaddr as ipaddress # pylint:disable=F0401 7 | ipaddress.ip_address = ipaddress.IPAddress 8 | 9 | int_from_byte = ord 10 | 11 | FileNotFoundError = IOError 12 | 13 | def int_from_bytes(b): 14 | if b: 15 | return int(b.encode("hex"), 16) 16 | return 0 17 | 18 | byte_from_int = chr 19 | else: 20 | import ipaddress # pylint:disable=F0401 21 | 22 | int_from_byte = lambda x: x 23 | 24 | FileNotFoundError = FileNotFoundError 25 | 26 | int_from_bytes = lambda x: int.from_bytes(x, 'big') 27 | 28 | byte_from_int = lambda x: bytes([x]) 29 | -------------------------------------------------------------------------------- /src/shaarli/application/PageBuilder.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/PageBuilder.php b/src/shaarli/application/PageBuilder.php (rejected hunks) 2 | @@ -85,7 +85,6 @@ private function initialize() 3 | $this->tpl->assign('scripturl', index_url($_SERVER)); 4 | $visibility = ! empty($_SESSION['visibility']) ? $_SESSION['visibility'] : ''; 5 | $this->tpl->assign('visibility', $visibility); 6 | - $this->tpl->assign('nextVisibility', $this->getNextVisibility($visibility)); 7 | $this->tpl->assign('untaggedonly', !empty($_SESSION['untaggedonly'])); 8 | $this->tpl->assign('pagetitle', $this->conf->get('general.title', 'Shaarli')); 9 | if ($this->conf->exists('general.header_link')) { 10 | -------------------------------------------------------------------------------- /src/huginn/deployment/roles/huginn_development.json: -------------------------------------------------------------------------------- 1 | { 2 | 3 | "name" : "huginn_development", 4 | 5 | "chef_type" : "role", 6 | 7 | "json_class" : "Chef::Role", 8 | 9 | "description" : "Huginn Development Environment", 10 | 11 | "default_attributes" : { 12 | "mysql" : { 13 | "server_root_password" : "", 14 | "server_repl_password" : "", 15 | "server_debian_password" : "" 16 | }, 17 | "nginx" : { 18 | "init_style" : "upstart" 19 | } 20 | }, 21 | 22 | "run_list":[ 23 | "recipe[git]", 24 | "recipe[apt]", 25 | "recipe[mysql::server]", 26 | "recipe[nodejs::install_from_binary]", 27 | "recipe[huginn_development]" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /src/shaarli/application/front/controller/admin/TokenController.php: -------------------------------------------------------------------------------- 1 | withHeader('Content-Type', 'text/plain'); 23 | 24 | return $response->write($this->container->sessionManager->generateToken()); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/huginn/deployment/roles/huginn_production.json: -------------------------------------------------------------------------------- 1 | { 2 | 3 | "name" : "huginn_production", 4 | 5 | "chef_type" : "role", 6 | 7 | "json_class" : "Chef::Role", 8 | 9 | "description" : "Huginn Production Environment", 10 | 11 | "default_attributes" : { 12 | "mysql": { 13 | "server_root_password": "", 14 | "server_repl_password": "", 15 | "server_debian_password": "" 16 | }, 17 | "nginx" : { 18 | "init_style" : "upstart" 19 | } 20 | }, 21 | 22 | "run_list":[ 23 | "recipe[git]", 24 | "recipe[apt]", 25 | "recipe[mysql::server]", 26 | "recipe[nodejs::install_from_binary]", 27 | "recipe[nginx]", 28 | "recipe[huginn_production]" 29 | ] 30 | } 31 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/test_include/data.json: -------------------------------------------------------------------------------- 1 | { 2 | "next_topic_id": 1, 3 | "topics": [], 4 | "next_message_id": 5, 5 | "comments": { 6 | "1@2": [ 7 | { 8 | "comment_id": 1, 9 | "body": "New user test!", 10 | "added": 1423442049 11 | }, 12 | { 13 | "comment_id": 2, 14 | "body": "test 321", 15 | "added": 1423531445 16 | }, 17 | { 18 | "comment_id": 3, 19 | "body": "0.2.4 test.", 20 | "added": 1424133003 21 | } 22 | ] 23 | }, 24 | "topic_votes": { 25 | "1@2": 1, 26 | "1@6": 1, 27 | "1@69": 1, 28 | "607@69": 1 29 | }, 30 | "comment_votes": { 31 | "35@2": 1, 32 | "7@64": 1, 33 | "8@64": 1, 34 | "50@2": 1, 35 | "13@77": 1 36 | } 37 | } -------------------------------------------------------------------------------- /src/shaarli/application/exceptions/IOException.php: -------------------------------------------------------------------------------- 1 | path = $path; 23 | $this->message = empty($message) ? t('Error accessing') : $message; 24 | $this->message .= ' "' . $this->path . '"'; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/shaarli/application/formatter/BookmarkMarkdownExtraFormatter.php: -------------------------------------------------------------------------------- 1 | parsedown = new ShaarliParsedownExtra(); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/shaarli/tpl/default/js/shaarli.js.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/tpl/default/js/shaarli.js b/src/shaarli/tpl/default/js/shaarli.js (rejected hunks) 2 | @@ -607,10 +607,11 @@ function htmlEntities(str) 3 | function activateFirefoxSocial(node) { 4 | var loc = location.href; 5 | var baseURL = loc.substring(0, loc.lastIndexOf("/") + 1); 6 | + var title = document.title; 7 | 8 | // Keeping the data separated (ie. not in the DOM) so that it's maintainable and diffable. 9 | var data = { 10 | - name: "{$shaarlititle}", 11 | + name: title, 12 | description: "The personal, minimalist, super-fast, database free, bookmarking service by the Shaarli community.", 13 | author: "Shaarli", 14 | version: "1.0.0", 15 | -------------------------------------------------------------------------------- /src/huginn/public/500.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | We're sorry, but something went wrong (500) 5 | 17 | 18 | 19 | 20 | 21 |
    22 |

    We're sorry, but something went wrong.

    23 |
    24 | 25 | 26 | -------------------------------------------------------------------------------- /src/shaarli/application/config/ConfigManager.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/config/ConfigManager.php b/src/shaarli/application/config/ConfigManager.php (rejected hunks) 2 | @@ -370,8 +370,8 @@ protected function setDefaultValues() 3 | $this->setEmpty('general.enable_async_metadata', true); 4 | $this->setEmpty('general.tags_separator', ' '); 5 | 6 | - $this->setEmpty('updates.check_updates', false); 7 | - $this->setEmpty('updates.check_updates_branch', 'stable'); 8 | + $this->setEmpty('updates.check_updates', true); 9 | + $this->setEmpty('updates.check_updates_branch', 'latest'); 10 | $this->setEmpty('updates.check_updates_interval', 86400); 11 | 12 | $this->setEmpty('feed.rss_permalinks', true); 13 | -------------------------------------------------------------------------------- /src/huginn/app/models/user_credential.rb: -------------------------------------------------------------------------------- 1 | class UserCredential < ActiveRecord::Base 2 | MODES = %w[text java_script] 3 | 4 | attr_accessible :credential_name, :credential_value, :mode 5 | 6 | belongs_to :user 7 | 8 | validates_presence_of :credential_name 9 | validates_presence_of :credential_value 10 | validates_inclusion_of :mode, :in => MODES 11 | validates_presence_of :user_id 12 | validates_uniqueness_of :credential_name, :scope => :user_id 13 | 14 | before_validation :default_mode_to_text 15 | before_save :trim_fields 16 | 17 | protected 18 | 19 | def trim_fields 20 | credential_name.strip! 21 | credential_value.strip! 22 | end 23 | 24 | def default_mode_to_text 25 | self.mode = 'text' unless mode.present? 26 | end 27 | end 28 | -------------------------------------------------------------------------------- /src/shaarli/plugins/demo_plugin/DemoPluginController.php: -------------------------------------------------------------------------------- 1 | assignView( 16 | 'content', 17 | '
    ' . 18 | 'This is a demo page. I have access to Shaarli container, so I\'m free to do whatever I want here.' . 19 | '
    ' 20 | ); 21 | 22 | return $response->write($this->render('pluginscontent')); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/shaarli/tpl/default/export.bookmarks.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {ignore}The RainTPL loop is formatted to avoid generating extra newlines{/ignore} 6 | {$pagetitle} 7 |

    Shaarli export of {$selection} bookmarks on {$date}

    8 |

    {loop="links"}{$private=intval($value.private)} 9 |

    {$value.title}{if="$value.description"}{$eol}
    {$value.description}{/if}{/loop} 10 |

    11 | -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/export.bookmarks.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {ignore}The RainTPL loop is formatted to avoid generating extra newlines{/ignore} 6 | {$pagetitle} 7 |

    Shaarli export of {$selection} bookmarks on {$date}

    8 |

    {loop="links"}{$private=intval($value.private)} 9 |

    {$value.title}{if="$value.description"}{$eol}
    {$value.description}{/if}{/loop} 10 |

    11 | -------------------------------------------------------------------------------- /src/huginn/config/initializers/action_mailer.rb: -------------------------------------------------------------------------------- 1 | # Read smtp config out of a config/smtp.yml file 2 | 3 | smtp_config = YAML::load(ERB.new(File.read(Rails.root.join('config', 'smtp.yml'))).result) 4 | if smtp_config.keys.include? Rails.env 5 | Huginn::Application.config.action_mailer.smtp_settings = smtp_config[Rails.env].symbolize_keys 6 | end 7 | 8 | # Huginn::Application.config.action_mailer.smtp_settings = { 9 | # address: ENV['SMTP_SERVER'] || 'smtp.gmail.com', 10 | # port: ENV['SMTP_PORT'] || 587, 11 | # domain: ENV['SMTP_DOMAIN'], 12 | # authentication: ENV['SMTP_AUTHENTICATION'] || 'plain', 13 | # enable_starttls_auto: ENV['SMTP_ENABLE_STARTTLS_AUTO'] == 'true' ? true : false, 14 | # user_name: ENV['SMTP_USER_NAME'], 15 | # password: ENV['SMTP_PASSWORD'] 16 | # } 17 | -------------------------------------------------------------------------------- /src/huginn/app/controllers/user_location_updates_controller.rb: -------------------------------------------------------------------------------- 1 | class UserLocationUpdatesController < ApplicationController 2 | skip_before_filter :authenticate_user! 3 | 4 | def create 5 | user = User.find_by_id(params[:user_id]) 6 | if user 7 | secret = params[:secret] 8 | user.agents.of_type(Agents::UserLocationAgent).find_all {|agent| agent.options[:secret] == secret }.each do |agent| 9 | agent.create_event :payload => params.except(:controller, :action, :secret, :user_id, :format), 10 | :lat => params[:latitude], 11 | :lng => params[:longitude] 12 | end 13 | render :text => "ok" 14 | else 15 | render :text => "user not found", :status => :not_found 16 | end 17 | end 18 | end 19 | -------------------------------------------------------------------------------- /src/net/src/Test/Spy.py: -------------------------------------------------------------------------------- 1 | class Spy: 2 | def __init__(self, obj, func_name): 3 | self.obj = obj 4 | self.func_name = func_name 5 | self.func_original = getattr(self.obj, func_name) 6 | self.calls = [] 7 | 8 | def __enter__(self, *args, **kwargs): 9 | def loggedFunc(cls, *args, **kwargs): 10 | call = dict(enumerate(args, 1)) 11 | call[0] = cls 12 | call.update(kwargs) 13 | print "Logging", call 14 | self.calls.append(call) 15 | return self.func_original(cls, *args, **kwargs) 16 | setattr(self.obj, self.func_name, loggedFunc) 17 | return self.calls 18 | 19 | def __exit__(self, *args, **kwargs): 20 | setattr(self.obj, self.func_name, self.func_original) -------------------------------------------------------------------------------- /src/net/src/Test/TestSiteStorage.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | 4 | @pytest.mark.usefixtures("resetSettings") 5 | class TestSiteStorage: 6 | def testWalk(self, site): 7 | # Rootdir 8 | walk_root = list(site.storage.walk("")) 9 | assert "content.json" in walk_root 10 | assert "css/all.css" in walk_root 11 | 12 | # Subdir 13 | assert list(site.storage.walk("data-default")) == ["data.json", "users/content-default.json"] 14 | 15 | def testList(self, site): 16 | # Rootdir 17 | list_root = list(site.storage.list("")) 18 | assert "content.json" in list_root 19 | assert "css/all.css" not in list_root 20 | 21 | # Subdir 22 | assert set(site.storage.list("data-default")) == set(["data.json", "users"]) 23 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data/users/1J6UrZMkarjVg5ax9W4qThir3BFUikbW6C/content.json: -------------------------------------------------------------------------------- 1 | { 2 | "address": "1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT", 3 | "cert_auth_type": "web", 4 | "cert_sign": "HBsTrjTmv+zD1iY93tSci8n9DqdEtYwzxJmRppn4/b+RYktcANGm5tXPOb+Duw3AJcgWDcGUvQVgN1D9QAwIlCw=", 5 | "cert_user_id": "toruser@zeroid.bit", 6 | "files": { 7 | "data.json": { 8 | "sha512": "4868b5e6d70a55d137db71c2e276bda80437e0235ac670962acc238071296b45", 9 | "size": 168 10 | } 11 | }, 12 | "inner_path": "data/users/1J6UrZMkarjVg5ax9W4qThir3BFUikbW6C/content.json", 13 | "modified": 1470340818.389, 14 | "signs": { 15 | "1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT": "G6oCzql6KWKAq2aSmZ1pm4SqvwL3e3LRdWxsvILrDc6VWpGZmVgbNn5qW18bA7fewhtA/oKc5+yYjGlTLLOWrB4=" 16 | } 17 | } -------------------------------------------------------------------------------- /src/shaarli/plugins/pubsubhubbub/README.md: -------------------------------------------------------------------------------- 1 | # PubSubHubbub plugin 2 | 3 | Enable this plugin to notify a Hub everytime you add or edit a link. 4 | 5 | This allow hub subcribers to receive update notifications in real time, 6 | which is useful for feed syndication service which supports PubSubHubbub. 7 | 8 | ## Public Hub 9 | 10 | By default, Shaarli will use [Google's public hub](http://pubsubhubbub.appspot.com/). 11 | 12 | [Here](https://github.com/pubsubhubbub/PubSubHubbub/wiki/Hubs) is a list of public hubs. 13 | 14 | You can also host your own PubSubHubbub server implementation, such as [phubb](https://github.com/cweiske/phubb). 15 | 16 | ## cURL 17 | 18 | While there is a fallback function to notify the hub, it's recommended that 19 | you have PHP cURL extension enabled to use this plugin. 20 | 21 | -------------------------------------------------------------------------------- /src/net/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alpine:3.6 2 | 3 | #Base settings 4 | ENV HOME /root 5 | 6 | #Install ZeroNet 7 | RUN apk --update upgrade \ 8 | && apk --no-cache --no-progress add musl-dev gcc python python-dev py2-pip tor \ 9 | && pip install gevent msgpack \ 10 | && apk del musl-dev gcc python-dev py2-pip \ 11 | && rm -rf /var/cache/apk/* /tmp/* /var/tmp/* \ 12 | && echo "ControlPort 9051" >> /etc/tor/torrc \ 13 | && echo "CookieAuthentication 1" >> /etc/tor/torrc 14 | 15 | #Add Zeronet source 16 | COPY . /root 17 | VOLUME /root/data 18 | 19 | #Control if Tor proxy is started 20 | ENV ENABLE_TOR false 21 | 22 | WORKDIR /root 23 | 24 | #Set upstart command 25 | CMD (! ${ENABLE_TOR} || tor&) && python zeronet.py --ui_ip 0.0.0.0 --fileserver_port 26552 26 | 27 | #Expose ports 28 | EXPOSE 43110 26552 29 | -------------------------------------------------------------------------------- /src/shaarli/application/front/controller/visitor/DailyController.php.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/application/front/controller/visitor/DailyController.php b/src/shaarli/application/front/controller/visitor/DailyController.php (rejected hunks) 2 | @@ -131,7 +131,7 @@ public function rss(Request $request, Response $response): Response 3 | $dataPerDay[$day] = [ 4 | 'date' => $endDateTime, 5 | 'date_rss' => $endDateTime->format(DateTime::RSS), 6 | - 'date_human' => DailyPageHelper::getDescriptionByType($type, $dayDateTime), 7 | + 'date_human' => DailyPageHelper::getDescriptionByType($type, $dayDateTime, false), 8 | 'absolute_url' => $indexUrl . 'daily?' . $type . '=' . $day, 9 | 'links' => [], 10 | ]; 11 | -------------------------------------------------------------------------------- /src/net/src/Ui/media/lib/jquery.csslater.coffee: -------------------------------------------------------------------------------- 1 | jQuery.fn.readdClass = (class_name) -> 2 | elem = @ 3 | elem.removeClass class_name 4 | setTimeout ( -> 5 | elem.addClass class_name 6 | ), 1 7 | return @ 8 | 9 | jQuery.fn.removeLater = (time = 500) -> 10 | elem = @ 11 | setTimeout ( -> 12 | elem.remove() 13 | ), time 14 | return @ 15 | 16 | jQuery.fn.hideLater = (time = 500) -> 17 | elem = @ 18 | setTimeout ( -> 19 | if elem.css("opacity") == 0 20 | elem.css("display", "none") 21 | ), time 22 | return @ 23 | 24 | jQuery.fn.addClassLater = (class_name, time = 5) -> 25 | elem = @ 26 | setTimeout ( -> 27 | elem.addClass(class_name) 28 | ), time 29 | return @ 30 | 31 | jQuery.fn.cssLater = (name, val, time = 500) -> 32 | elem = @ 33 | setTimeout ( -> 34 | elem.css name, val 35 | ), time 36 | return @ -------------------------------------------------------------------------------- /src/huginn/app/models/agents/manual_event_agent.rb: -------------------------------------------------------------------------------- 1 | module Agents 2 | class ManualEventAgent < Agent 3 | cannot_be_scheduled! 4 | cannot_receive_events! 5 | 6 | description <<-MD 7 | Use this Agent to manually create Events for testing or other purposes. 8 | MD 9 | 10 | event_description "User determined" 11 | 12 | def default_options 13 | { "no options" => "are needed" } 14 | end 15 | 16 | def handle_details_post(params) 17 | if params['payload'] 18 | create_event(:payload => params['payload']) 19 | { :success => true } 20 | else 21 | { :success => false, :error => "You must provide a JSON payload" } 22 | end 23 | end 24 | 25 | def working? 26 | true 27 | end 28 | 29 | def validate_options 30 | end 31 | end 32 | end -------------------------------------------------------------------------------- /src/huginn/public/422.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | The change you wanted was rejected (422) 5 | 17 | 18 | 19 | 20 | 21 |

    22 |

    The change you wanted was rejected.

    23 |

    Maybe you tried to change something you didn't have access to.

    24 |
    25 | 26 | 27 | -------------------------------------------------------------------------------- /src/shaarli/plugins/demo_plugin/languages/fr/LC_MESSAGES/demo.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Demo plugin\n" 4 | "POT-Creation-Date: 2017-08-19 10:45+0200\n" 5 | "PO-Revision-Date: 2017-08-19 11:28+0200\n" 6 | "Last-Translator: \n" 7 | "Language-Team: demo\n" 8 | "Language: fr\n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "X-Generator: Poedit 2.0.2\n" 13 | "X-Poedit-Basepath: ../../..\n" 14 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 15 | "X-Poedit-KeywordsList: ;demo_plugin_t:1,2;demo_plugin_t\n" 16 | "X-Poedit-SourceCharset: UTF-8\n" 17 | "X-Poedit-SearchPath-0: .\n" 18 | 19 | #: demo_plugin.php:173 20 | msgid "Shaarli is now enhanced by the awesome demo_plugin." 21 | msgstr "Shaarli est maintenant amélioré avec le fantastique demo_plugin." 22 | -------------------------------------------------------------------------------- /src/net/src/lib/bencode/encode.py: -------------------------------------------------------------------------------- 1 | from . import string_type 2 | 3 | def encode(obj): 4 | ''' 5 | Bencodes the object. The object must be an instance of: str, int, list, or dict. 6 | ''' 7 | 8 | if isinstance(obj, string_type): 9 | return '{0}:{1}'.format(len(obj), obj) 10 | elif isinstance(obj, int): 11 | return 'i{0}e'.format(obj) 12 | elif isinstance(obj, list): 13 | values = ''.join([encode(o) for o in obj]) 14 | 15 | return 'l{0}e'.format(values) 16 | elif isinstance(obj, dict): 17 | items = sorted(obj.items()) 18 | values = ''.join([encode(str(key)) + encode(value) for key, value in items]) 19 | 20 | return 'd{0}e'.format(values) 21 | else: 22 | raise TypeError('Unsupported type: {0}. Must be one of: str, int, list, dict.'.format(type(obj))) 23 | -------------------------------------------------------------------------------- /src/huginn/public/404.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | The page you were looking for doesn't exist (404) 5 | 17 | 18 | 19 | 20 | 21 |
    22 |

    The page you were looking for doesn't exist.

    23 |

    You may have mistyped the address or the page may have moved.

    24 |
    25 | 26 | 27 | -------------------------------------------------------------------------------- /src/net/src/lib/merkletools/setup.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | from setuptools import find_packages 4 | from setuptools import setup 5 | 6 | here = os.path.abspath(os.path.dirname(__file__)) 7 | install_requires = [ 8 | "pysha3==1.0b1" 9 | ] 10 | 11 | setup( 12 | name='merkletools', 13 | version='1.0.2', 14 | description='Merkle Tools', 15 | classifiers=[ 16 | "Intended Audience :: Developers", 17 | "Intended Audience :: Science/Research", 18 | "License :: OSI Approved :: MIT License", 19 | "Programming Language :: Python :: 2.7", 20 | ], 21 | url='https://github.com/', 22 | author='Eder Santana', 23 | keywords='merkle tree, blockchain, tierion', 24 | license="MIT", 25 | packages=find_packages(), 26 | include_package_data=False, 27 | zip_safe=False, 28 | install_requires=install_requires 29 | ) 30 | -------------------------------------------------------------------------------- /src/net/src/Test/testdata/1TeSTvb4w2PWE81S2rEELgmX2GCCExQGT-original/data-default/users/content-default.json: -------------------------------------------------------------------------------- 1 | { 2 | "files": {}, 3 | "ignore": ".*", 4 | "modified": 1432466966.003, 5 | "signs": { 6 | "1BLogC9LN4oPDcruNz3qo1ysa133E9AGg8": "HChU28lG4MCnAiui6wDAaVCD4QUrgSy4zZ67+MMHidcUJRkLGnO3j4Eb1N0AWQ86nhSBwoOQf08Rha7gRyTDlAk=" 7 | }, 8 | "user_contents": { 9 | "cert_signers": { 10 | "zeroid.bit": [ "1iD5ZQJMNXu43w1qLB8sfdHVKppVMduGz" ] 11 | }, 12 | "permission_rules": { 13 | ".*": { 14 | "files_allowed": "data.json", 15 | "max_size": 10000 16 | }, 17 | "bitid/.*@zeroid.bit": { "max_size": 40000 }, 18 | "bitmsg/.*@zeroid.bit": { "max_size": 15000 } 19 | }, 20 | "permissions": { 21 | "banexample@zeroid.bit": false, 22 | "nofish@zeroid.bit": { "max_size": 20000 } 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /src/shaarli/tpl/vintage/thumbnails.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {include="includes"} 4 | 5 | 8 | 9 |
    10 |
    11 | 12 | 13 | 14 |
    15 |
    16 |
    17 | 18 |
    19 | 0 / {$ids|count} 20 |
    21 |
    22 | 23 | 24 | 25 | {include="page.footer"} 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /src/shaarli/doc/md/Download-and-Installation.md.rej: -------------------------------------------------------------------------------- 1 | diff a/src/shaarli/doc/md/Download-and-Installation.md b/src/shaarli/doc/md/Download-and-Installation.md (rejected hunks) 2 | @@ -24,11 +24,11 @@ Using one of the following methods: 3 | 4 | In most cases, you should download the latest Shaarli release from the [releases](https://github.com/shaarli/Shaarli/releases) page. Download our **shaarli-full** archive to include dependencies. 5 | 6 | -The current latest released version is `v0.10.3` 7 | +The current latest released version is `v0.10.4` 8 | 9 | ```bash 10 | -$ wget https://github.com/shaarli/Shaarli/releases/download/v0.10.3/shaarli-v0.10.3-full.zip 11 | -$ unzip shaarli-v0.10.3-full.zip 12 | +$ wget https://github.com/shaarli/Shaarli/releases/download/v0.10.4/shaarli-v0.10.4-full.zip 13 | +$ unzip shaarli-v0.10.4-full.zip 14 | $ mv Shaarli /path/to/shaarli/ 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /src/huginn/app/concerns/weibo_concern.rb: -------------------------------------------------------------------------------- 1 | module WeiboConcern 2 | extend ActiveSupport::Concern 3 | 4 | included do 5 | self.validate :validate_weibo_options 6 | end 7 | 8 | def validate_weibo_options 9 | unless options['app_key'].present? && 10 | options['app_secret'].present? && 11 | options['access_token'].present? 12 | errors.add(:base, "app_key, app_secret and access_token are required") 13 | end 14 | end 15 | 16 | def weibo_client 17 | unless @weibo_client 18 | WeiboOAuth2::Config.api_key = options['app_key'] # WEIBO_APP_KEY 19 | WeiboOAuth2::Config.api_secret = options['app_secret'] # WEIBO_APP_SECRET 20 | @weibo_client = WeiboOAuth2::Client.new 21 | @weibo_client.get_token_from_hash :access_token => options['access_token'] 22 | end 23 | @weibo_client 24 | end 25 | 26 | module ClassMethods 27 | 28 | end 29 | end 30 | -------------------------------------------------------------------------------- /src/shaarli/application/render/ThemeUtils.php: -------------------------------------------------------------------------------- 1 | withHeader('Content-Type', 'application/opensearchdescription+xml; charset=utf-8'); 22 | 23 | $this->assignView('serverurl', index_url($this->container->environment)); 24 | 25 | return $response->write($this->render(TemplatePage::OPEN_SEARCH)); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/huginn/spec/models/agents/weibo_user_agent_spec.rb: -------------------------------------------------------------------------------- 1 | # encoding: utf-8 2 | require 'spec_helper' 3 | 4 | describe Agents::WeiboUserAgent do 5 | before do 6 | # intercept the twitter API request for @tectonic's user profile 7 | stub_request(:any, /api.weibo.com/).to_return(:body => File.read(Rails.root.join("spec/data_fixtures/one_weibo.json")), :status => 200) 8 | 9 | @opts = { 10 | :uid => "123456", 11 | :expected_update_period_in_days => "2", 12 | :app_key => "asdfe", 13 | :app_secret => "asdfe", 14 | :access_token => "asdfe" 15 | } 16 | 17 | @checker = Agents::WeiboUserAgent.new(:name => "123456 fetcher", :options => @opts) 18 | @checker.user = users(:bob) 19 | @checker.save! 20 | end 21 | 22 | describe "#check" do 23 | it "should check for changes" do 24 | lambda { @checker.check }.should change { Event.count }.by(1) 25 | end 26 | end 27 | 28 | end -------------------------------------------------------------------------------- /src/net/src/lib/geventwebsocket/protocols/base.py: -------------------------------------------------------------------------------- 1 | class BaseProtocol(object): 2 | PROTOCOL_NAME = '' 3 | 4 | def __init__(self, app): 5 | self._app = app 6 | 7 | def on_open(self): 8 | self.app.on_open() 9 | 10 | def on_message(self, message): 11 | self.app.on_message(message) 12 | 13 | def on_close(self, reason=None): 14 | self.app.on_close(reason) 15 | 16 | @property 17 | def app(self): 18 | if self._app: 19 | return self._app 20 | else: 21 | raise Exception("No application coupled") 22 | 23 | @property 24 | def server(self): 25 | if not hasattr(self.app, 'ws'): 26 | return None 27 | 28 | return self.app.ws.handler.server 29 | 30 | @property 31 | def handler(self): 32 | if not hasattr(self.app, 'ws'): 33 | return None 34 | 35 | return self.app.ws.handler 36 | -------------------------------------------------------------------------------- /src/shaarli/application/config/ConfigIO.php: -------------------------------------------------------------------------------- 1 | cookies = $cookies; 18 | } 19 | 20 | public function setCookieParameter(string $key, string $value, int $expires, string $path): self 21 | { 22 | $this->cookies[$key] = $value; 23 | 24 | setcookie($key, $value, $expires, $path); 25 | 26 | return $this; 27 | } 28 | 29 | public function getCookieParameter(string $key, string $default = null): ?string 30 | { 31 | return $this->cookies[$key] ?? $default; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/huginn/app/assets/javascripts/user_credentials.js.coffee: -------------------------------------------------------------------------------- 1 | #= require ace/ace 2 | #= require ace/mode-javascript.js 3 | #= require ace/mode-markdown.js 4 | #= require_self 5 | 6 | $ -> 7 | editor = ace.edit("ace-credential-value") 8 | editor.getSession().setTabSize(2) 9 | editor.getSession().setUseSoftTabs(true) 10 | editor.getSession().setUseWrapMode(false) 11 | editor.setTheme("ace/theme/chrome") 12 | 13 | setMode = -> 14 | mode = $("#user_credential_mode").val() 15 | if mode == 'java_script' 16 | editor.getSession().setMode("ace/mode/javascript") 17 | else 18 | editor.getSession().setMode("ace/mode/text") 19 | 20 | setMode() 21 | $("#user_credential_mode").on 'change', setMode 22 | 23 | $textarea = $('#user_credential_credential_value').hide() 24 | editor.getSession().setValue($textarea.val()) 25 | 26 | $textarea.closest('form').on 'submit', -> 27 | $textarea.val(editor.getSession().getValue()) -------------------------------------------------------------------------------- /src/net/src/lib/subtl/README.md: -------------------------------------------------------------------------------- 1 | # subtl 2 | 3 | ## Overview 4 | 5 | SUBTL is a **s**imple **U**DP **B**itTorrent **t**racker **l**ibrary for Python, licenced under the modified BSD license. 6 | 7 | ## Example 8 | 9 | This short example will list a few IP Addresses from a certain hash: 10 | 11 | from subtl import UdpTrackerClient 12 | utc = UdpTrackerClient('tracker.openbittorrent.com', 80) 13 | utc.connect() 14 | if not utc.poll_once(): 15 | raise Exception('Could not connect') 16 | print('Success!') 17 | 18 | utc.announce(info_hash='089184ED52AA37F71801391C451C5D5ADD0D9501') 19 | data = utc.poll_once() 20 | if not data: 21 | raise Exception('Could not announce') 22 | for a in data['response']['peers']: 23 | print(a) 24 | 25 | ## Caveats 26 | 27 | * There is no automatic retrying of sending packets yet. 28 | * This library won't download torrent files--it is simply a tracker client. 29 | -------------------------------------------------------------------------------- /src/huginn/spec/models/agents/twitter_user_agent_spec.rb: -------------------------------------------------------------------------------- 1 | require 'spec_helper' 2 | 3 | describe Agents::TwitterUserAgent do 4 | before do 5 | # intercept the twitter API request for @tectonic's user profile 6 | stub_request(:any, /tectonic/).to_return(:body => File.read(Rails.root.join("spec/data_fixtures/user_tweets.json")), :status => 200) 7 | 8 | @opts = { 9 | :username => "tectonic", 10 | :expected_update_period_in_days => "2", 11 | :consumer_key => "---", 12 | :consumer_secret => "---", 13 | :oauth_token => "---", 14 | :oauth_token_secret => "---" 15 | } 16 | 17 | @checker = Agents::TwitterUserAgent.new(:name => "tectonic", :options => @opts) 18 | @checker.user = users(:bob) 19 | @checker.save! 20 | end 21 | 22 | describe "#check" do 23 | it "should check for changes" do 24 | lambda { @checker.check }.should change { Event.count }.by(5) 25 | end 26 | end 27 | 28 | end -------------------------------------------------------------------------------- /src/huginn/doc/deployment/unicorn/production.rb: -------------------------------------------------------------------------------- 1 | app_path = "/home/you/app/current" 2 | 3 | worker_processes 2 4 | preload_app true 5 | timeout 180 6 | listen '/home/you/app/shared/pids/unicorn.socket' 7 | 8 | working_directory app_path 9 | 10 | rails_env = ENV['RAILS_ENV'] || 'production' 11 | 12 | # Log everything to one file 13 | stderr_path "log/unicorn.log" 14 | stdout_path "log/unicorn.log" 15 | 16 | # Set master PID location 17 | pid '/home/you/app/shared/pids/unicorn.pid' 18 | 19 | before_fork do |server, worker| 20 | ActiveRecord::Base.connection.disconnect! 21 | old_pid = "#{server.config[:pid]}.oldbin" 22 | if File.exists?(old_pid) && server.pid != old_pid 23 | begin 24 | Process.kill("QUIT", File.read(old_pid).to_i) 25 | rescue Errno::ENOENT, Errno::ESRCH 26 | # someone else did our job for us 27 | end 28 | end 29 | end 30 | 31 | after_fork do |server, worker| 32 | ActiveRecord::Base.establish_connection 33 | end 34 | --------------------------------------------------------------------------------