Negli ultimi due settimane ho ricevuto un grande aiuto dagli utenti di StackOverflow su un progetto, e invece di conservare il prodotto finito per me stesso, ho voluto condividerlo senza essere ostacolato dalle licenze, ma non voglio che ci sia così tanto legwork durante l'installazione che gli utenti evitano di provarlo.
Sto per pubblicarlo su Github e scegliere le licenze per il pubblico dominio. Mi piacerebbe essere molto semplice per gli utenti e utilizzare solo FTP.
Detto questo, devo assicurarmi di rimuovere cose come il file JQuery e altre dipendenze con licenza GPL / MIT che non ho scritto ma che il mio codice dipende? Non ho rimosso alcuna nota sul copyright dell'altro codice e tutto l'open source, sarebbe bello se gli utenti potessero scaricare tutto in una volta, mentre ovviamente non tentano di rappresentare che sono il titolare della licenza delle dipendenze.
All'interno dei miei file ci sono anche alcuni frammenti, quelli che devono essere esternalizzati con le istruzioni di installazione o possono essere pubblicati così com'è? Ecco un esempio, il mio file nav.php è lungo 115 righe e ho questi in cima:
<script type="text/javascript" src="./js/ddaccordion.js">
/***********************************************
* Accordion Content script- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
* Visit http://www.dynamicDrive.com for hundreds of DHTML scripts
* This notice must stay intact for legal use
***********************************************/
</script>
<link href="css/admin.css" rel="stylesheet">
<script type="text/javascript">
ddaccordion.init({
headerclass: "submenuheader", //Shared CSS class name of headers group
contentclass: "submenu", //Shared CSS class name of contents group
revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid value: "click", "clickgo", or "mouseover"
mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before header expands onMouseover
collapseprev: false, //Collapse previous content (so only one open at any time)? true/false
defaultexpanded: [], //index of content(s) open by default [index1, index2, etc] [] denotes no content
onemustopen: false, //Specify whether at least one header should be open always (so never all headers closed)
animatedefault: false, //Should contents open by default be animated into view?
persiststate: true, //persist state of opened contents within browser session?
toggleclass: ["", ""], //Two CSS classes to be applied to the header when it's collapsed and expanded, respectively ["class1", "class2"]
togglehtml: ["suffix", "<img src='./images/plus.gif' class='statusicon' />", "<img src='./images/minus.gif' class='statusicon' />"], //Additional HTML added to the header when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or keywords "fast", "normal", or "slow"
oninit:function(headers, expandedindices){ //custom code to run when headers have initalized
//do nothing
},
onopenclose:function(header, index, state, isuseractivated){ //custom code to run whenever a header is opened or closed
//do nothing
}
})
</script>