Skip to content

Instantly share code, notes, and snippets.

@lisawilliams
Created August 27, 2014 05:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lisawilliams/8700f8ea254a6e33b352 to your computer and use it in GitHub Desktop.
Save lisawilliams/8700f8ea254a6e33b352 to your computer and use it in GitHub Desktop.
Sample code for Illustrated Tutorial
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>sStory</title>
<script src="lib/js/3rdparty.min.js" type="text/javascript" charset="utf-8"></script>
<script src="http://maps.stamen.com/js/tile.stamen.js?v1.2.4" type="text/javascript"></script>
<script src="lib/js/sstory.js" type="text/javascript" charset="utf-8"></script>
<link rel="stylesheet" href="lib/styles/style.css" type="text/css" media="screen" title="Primary Stylesheet" charset="utf-8">
</head>
<body>
<nav id="header">
<div id="header-content" class="show-front">
<div id="header-front">
<h1 id="title">#TWEETWATCH</h1>
<h4 id="subtitle">How Twitter Cooperates With Government Surveillance</h4>
</div>
<ul id="navigation">
</ul>
<div id="header-bottom"><div id="progress" style="width: 0%;">&nbsp;</div></div>
</div>
</nav>
<div id="content">
</div>
<script type="text/javascript" charset="utf-8">
var story_list = [
{
type: 'photoCaption'
,photoUrl: 'http://s26.postimg.org/x9fzmngll/tweetwatch_map_2.png'
// ,title: 'Making beautiful stories easy'
,caption: '<h5>Twitter cooperates with government surveillance around the world</h5><p> -- but the main targets of that surveillance are Americans, by their own government.'
}
,{
type: 'text'
,html: 'Twitter, Inc. released its first transparency report June 30 2012. As at July 31 2014 the company received more than 2,000 different requests from 54 different countries, an increase of almost 150 percent since Twitter began releasing the data in 2012.</p><p>Despite Twitter\'s global growth, the United States continues to make the majority of requests for account information, comprising 61% of all requests received (up 2% from last report). Of the remaining 39%, Japan remains the next largest requester, constituting ~9% of overall requests (down from 15% during the second half of 2013). Excluding the twelve countries that submitted emergency disclosure requests only, Brazil and the United Kingdom each comprised ~4% of worldwide requests.</p><p>It’s also worth noting that Brazil, Spain, and Turkey all more than doubled their previous respective volume, with Brazil submitting more than three times as many requests (from 20 to 77). China and Iran are not represented.</p><p>More than 75% of Twitter accounts are registered outside the U.S. and 35+ languages are currently supported.</p><p></p><p>Data Retention Policy</p><p>Twitter retains different types of information for different time periods. Given Twitter\'s real-time nature, some information (e.g., IP logs) may only be stored for a very brief period of time.</p><p>Some information is stored automatically collected, while other information is provided at the user’s discretion. Though Twitter do store this information, it cannot guarantee its accuracy. For example, the user may have created a fake or anonymous profile. Twitter doesn’t require real name use, email verification, or identity authentication.</p><p>Once an account has been deactivated, there is a very brief period in which Twitter may be able to access account information, including Tweets. Content deleted by account holders (e.g., Tweets) is generally not available.</p><p></p><p>Types of Requests made to Twitter</p><p>Types of requests made to Twitter, Inc. includes: Information Requests, Removal Requests and Copyright Notices.</p><p>Requests for user account information from U.S. law enforcement are directed to Twitter, Inc. in San Francisco, California. Twitter responds to valid legal process issued in compliance with U.S. law. Private Information Requires a Subpoena or Court Order; contents of communications requires a Search Warrant. Twitter\'s policy is to notify users of requests for their account information, which includes a copy of the request, prior to disclosure unless they are prohibited from doing so. Exceptions to prior notice may include exigent or counterproductive circumstances (e.g., emergencies; account compromises).</p><p></p><p>Reasons Twitter will not comply with information request:<br>We do not comply with requests that fail to identify a Twitter account.<br>We may seek to narrow requests that are overly broad.<br>In other cases, users may have challenged the requests after we’ve notified them.<br>Twitter notifies affected users of requests for their account information unless they are prohibited.<br>U.S. law compliance does not extend to the global community, and therefore affects the breakdown of data available (i.e. Only data for the United States is broken down by standard information requests versus emergency requests), which makes a comparative analysis across the globe impossible.<h3>What constitutes an an emergency request?</h3><ul><li>Identity of the person who is in danger of death or serious physical injury;<li>The nature of the emergency (e.g., report of suicide, bomb threat);<li>Twitter @username and URL of the subject account(s) whose information is necessary to prevent the emergency;</li>Any specific Tweets you would like us to review</li>The specific information requested and why that information is necessary to prevent the emergency;</li>For the period of 1 Jan - 30 June 2014: 132 of 1,125 requests from the U.S. were deemed emergency requests.<ol>'
}
// {
// photoUrl: 'https://farm8.staticflickr.com/7028/6494490891_e1d2de1149_b.jpg'
// ,type: 'photoBigText'
// ,title: 'ALL YOUR BASE ARE BELONG TO US'
// ,title: 'Making beautiful stories easy'
// }
// ,{
// type: 'locationSinglePlace'
// ,address: "1600 Pennsylvania Ave NW Washington, DC"
// ,caption: "Easily make maps- just provide an address!"
// ,title: 'A map of the White House'
// }
// ,{
// type: 'photoCaption'
// ,photoUrl: 'https://farm8.staticflickr.com/7030/6751144021_d9b328e737_b.jpg'
// ,title: 'Full-screen media automatically'
// ,caption: '<h3>Captions too!</h3><p><a href="http://ejfox.github.io/sStory/documentation/">Read about more sStory features in the documentation</a></p><p>Lorem ipsum <em>dolor sit</em> amet. Include styled <span style="color: red">HTML</span>!'
// }
,{
type: 'photoMulti'
,photoUrlArray: ['http://37.media.tumblr.com/76cd2f0e146ac4d6251bd9ff28eb8307/tumblr_ms91cgSwmX1qcn8pro1_1280.jpg', 'http://24.media.tumblr.com/9a5c41e468022c91dfd201053d1a099b/tumblr_ms91cgSwmX1qcn8pro2_1280.jpg', 'http://24.media.tumblr.com/5aeb959fd9c416f18e80d27b84384f1b/tumblr_ms91cgSwmX1qcn8pro3_1280.jpg']
}
// ,{
// type: 'videoYoutube'
// ,embedCode: '<iframe width="640" height="480" src="//www.youtube.com/embed/dQw4w9WgXcQ?rel=0" frameborder="0" allowfullscreen></iframe>'
// }
// ,{
// type: 'videoVimeo'
// ,embedCode: '<iframe src="http://player.vimeo.com/video/35912908?badge=0" width="500" height="281" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe> <p><a href="http://vimeo.com/35912908">FACETURE</a> from <a href="http://vimeo.com/user9669590">Phil Cuttance</a> on <a href="https://vimeo.com">Vimeo</a>.</p>'
// }
// ,{
// type: 'soundSoundcloud'
// ,embedCode: '<iframe width="100%" height="166" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/125682501&amp;color=ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_artwork=true"></iframe>'
// }
// ,{
// type: 'timelineVerite'
// ,embedCode: "<iframe src='http://cdn.knightlab.com/libs/timeline/latest/embed/index.html?source=0ApAkxBfw1JT4dFVxOEk0aGRxbk9URE9yeDJKMXNIS3c&font=Bevan-PotanoSans&maptype=toner&lang=en&start_at_slide=1&height=650' width='100%' height='650' frameborder='0'></iframe>"
// }
// ,{
// type: 'text'
// ,html: '<h2>sStory</h2><p>sStory is being continually developed by me, <a href="http://ejfox.com">EJ Fox</a>. If you have any suggestions, comments, or Pull Requests, please let me know <a href="https://github.com/ejfox/sStory/issues?state=open">on GitHub</a>. I hope you find sStory useful!</p>'
// }
]
var story = new sStory(story_list)
story.render()
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment