<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% ' *** Edit Operations: declare variables Dim MM_editAction Dim MM_abortEdit Dim MM_editQuery Dim MM_editCmd Dim MM_editConnection Dim MM_editTable Dim MM_editRedirectUrl Dim MM_editColumn Dim MM_recordId Dim MM_fieldsStr Dim MM_columnsStr Dim MM_fields Dim MM_columns Dim MM_typeArray Dim MM_formVal Dim MM_delim Dim MM_altVal Dim MM_emptyVal Dim MM_i MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME")) If (Request.QueryString <> "") Then MM_editAction = MM_editAction & "?" & Request.QueryString End If ' boolean to abort record edit MM_abortEdit = false ' query string to execute MM_editQuery = "" %> <% ' *** Insert Record: set variables If (CStr(Request("MM_insert")) = "form1") Then MM_editConnection = MM_creators_STRING MM_editTable = "Addresses" MM_editRedirectUrl = "../..//contact/thankyou.html" MM_fieldsStr = "First_Name|value|Las_tName|value|Organization|value|Address|value|City|value|State|value|Zip_Code|value|Email_Address|value|Home_Phone|value|Work_Phone|value|Fax_Number|value|Strategic_Campaigns|value|Public_Policy_Agenda|value|Authors_Licensing_System|value|Legal_Defense_Fund|value|Media_Database|value|Health_Insurance|value|Educational_Programs|value" MM_columnsStr = "[First Name]|',none,''|[Las tName]|',none,''|Organization|',none,''|Address|',none,''|City|',none,''|State|',none,''|[Zip Code]|none,none,NULL|[Email Address]|',none,''|[Home Phone]|',none,''|[Work Phone]|',none,''|[Fax Number]|',none,''|[Strategic Campaigns]|none,1,0|[Public Policy Agenda]|none,1,0|[Authors Licensing System]|none,1,0|[Legal Defense Fund]|none,1,0|[Media Database]|none,1,0|[Health Insurance]|none,1,0|[Educational Programs]|none,1,0" ' create the MM_fields and MM_columns arrays MM_fields = Split(MM_fieldsStr, "|") MM_columns = Split(MM_columnsStr, "|") ' set the form values For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2 MM_fields(MM_i+1) = CStr(Request.Form(MM_fields(MM_i))) Next ' append the query string to the redirect URL If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString Else MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString End If End If End If %> <% ' *** Insert Record: construct a sql insert statement and execute it Dim MM_tableValues Dim MM_dbValues If (CStr(Request("MM_insert")) <> "") Then ' create the sql insert statement MM_tableValues = "" MM_dbValues = "" For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2 MM_formVal = MM_fields(MM_i+1) MM_typeArray = Split(MM_columns(MM_i+1),",") MM_delim = MM_typeArray(0) If (MM_delim = "none") Then MM_delim = "" MM_altVal = MM_typeArray(1) If (MM_altVal = "none") Then MM_altVal = "" MM_emptyVal = MM_typeArray(2) If (MM_emptyVal = "none") Then MM_emptyVal = "" If (MM_formVal = "") Then MM_formVal = MM_emptyVal Else If (MM_altVal <> "") Then MM_formVal = MM_altVal ElseIf (MM_delim = "'") Then ' escape quotes MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'" Else MM_formVal = MM_delim + MM_formVal + MM_delim End If End If If (MM_i <> LBound(MM_fields)) Then MM_tableValues = MM_tableValues & "," MM_dbValues = MM_dbValues & "," End If MM_tableValues = MM_tableValues & MM_columns(MM_i) MM_dbValues = MM_dbValues & MM_formVal Next MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")" If (Not MM_abortEdit) Then ' execute the insert Set MM_editCmd = Server.CreateObject("ADODB.Command") MM_editCmd.ActiveConnection = MM_editConnection MM_editCmd.CommandText = MM_editQuery MM_editCmd.Execute MM_editCmd.ActiveConnection.Close If (MM_editRedirectUrl <> "") Then Response.Redirect(MM_editRedirectUrl) End If End If End If %> Creators Federation
JONATHAN TASINI
 
 
Strategic Campaigns
Public Policy Agenda
Authors Licensing System
Legal Defense Fund
Media Database
Health Insurance & Benefits
Educational Programs


Creators Federation’s President and Executive Director
Jonathan Tasini is the founder, president and executive director of the Creators Federation. Tasini first proposed such a Federation in the early 1990s, a concept that a number of organizations signed on to yet were unable to implement because of the lack of organizational resources. Tasini served as the president of the National Writers Union from 1990 to 2003 (he is still the NWU's president emeritus). During his tenure, he oversaw the rapid growth of the union. From 1990 to 2003, the union nearly tripled in size and its budget grew seven-fold to $1.7 million.

Tasini envisioned the importance of authors’ electronic rights in the digital age before it emerged broadly. In 1993, he initiated and was the lead plaintiff in the landmark lawsuit, Tasini v. The New York Times, alleging widespread copyright infringement by major media companies. On June 25th 2001, the U.S. Supreme Court ruled in favor of the plaintiffs, creating liabilities for the media industry and providing the basis for class action lawsuit that lead to a $18 million damages pool for freelance creators.

He developed innovative strategies to bring pressure to bear against media companies in the wake of landmark lawsuit victory, including a new class action lawsuit and a national pension fund campaign to highlight financial liabilities. He conceived of the freelance writer’s version of ASCAP—a licensing agency to authorize use of creators’ works, and track and pay royalties called the Publication Rights Clearinghouse (PRC).

He developed coalitions nationally and internationally. He and his Dutch counterpart (Dutch Journalists Union Executive Director Hans Verploeg) conceived of the 2000 Authors Summit in London. The Summit unified authors worldwide around a specific plan of action, including a campaign for collective bargaining rights for freelance creators where they don’t exist; a strategy for legal action to challenge violations of rights; international coordination of lobbying efforts particularly at WIPO; the creation of an international media database; and training materials for unions and for freelancers to improve the quality of bargaining (model contracts and negotiating skills).

He developed legislative strategy around numerous issues, including temporary employment, taxes, health care, anti-trust and collective bargaining. He is leading a lobbying effort in Congress for an anti-trust exemption for freelance creators.

He also negotiated landmark contracts, including reaching the first licensing deal with a commercial website (Contentville.com) in an agreement that paid authors a higher royalty fee than publishers (authors received 30 percent of all download fees, publishers received 25 percent).

He served as an Executive Board Member of the International Federation of Journalists, which represents around 450,000 members in more than 100 countries in Europe, Africa, Asia, Latin America, South American and the former Soviet Union. He was a member of the AFL-CIO Committee on Arts, Media and Entertainment of the AFL-CIO’s Department for Professional Employees; and a member of the International Technical, Office and Professional Advisory Council, United Auto Workers, which oversees all white-collar organizing in the UAW. He also was a member of the National Research Council’s Computer Science and Telecommunications Board’s joint industry-scientific-academic panel that issued the report, "The Digital Dilemma: Intellectual Property in the Information Age," which outlined policy recommendations for Congress. He was also named one of the Publishing Industry’s 40 Most Influential People in 2001 by Folio Magazine, the Magazine for Magazine Management.

CF Projects
Strategic Campaigns | Public Policy Agenda | Authors Licensing System
Legal Defense Fund | Media Database | Health Insurance and Benefits
Educational Programs

About CF
Mission | Leadership

Contact Us
How Can I Join? | Press | Staff | Donate | Links

 
 
 
 
Copyright © 2005 Creators Federation 
Non-commercial use of the content of this site is granted, provided proper acknowledgement of its source is made.
 
<>