diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..c5ea1ff Binary files /dev/null and b/.DS_Store differ diff --git a/.gitignore b/.gitignore index 9a2f2e0..1b3f84a 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ -/**/.DS_Store +**/node_modules/**/* +**/.DS_Store + diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/0.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/0.txt new file mode 100644 index 0000000..0666991 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/0.txt @@ -0,0 +1 @@ +My filename starts with a number \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/UppeRCaSeLowerCASE.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/UppeRCaSeLowerCASE.txt new file mode 100644 index 0000000..bc02414 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/UppeRCaSeLowerCASE.txt @@ -0,0 +1 @@ +My filename has uppercase and lowercase characters \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/afox.gif b/hw4/Claudio_Maggioni/NodeStaticFiles/afox.gif new file mode 100644 index 0000000..b7f35bc Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/afox.gif differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/app.js b/hw4/Claudio_Maggioni/NodeStaticFiles/app.js new file mode 100644 index 0000000..a3b2f2d --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/app.js @@ -0,0 +1,3 @@ +$(function(){ + $("#OEV-general-info").tablesorter({sortList:[[0,0]]}); +}) \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/asq.png b/hw4/Claudio_Maggioni/NodeStaticFiles/asq.png new file mode 100644 index 0000000..1b056a5 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/asq.png differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/bunny.mp4 b/hw4/Claudio_Maggioni/NodeStaticFiles/bunny.mp4 new file mode 100644 index 0000000..81d11df Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/bunny.mp4 differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/bunny.ogv b/hw4/Claudio_Maggioni/NodeStaticFiles/bunny.ogv new file mode 100644 index 0000000..e128d82 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/bunny.ogv differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/ex-node.pdf b/hw4/Claudio_Maggioni/NodeStaticFiles/ex-node.pdf new file mode 100644 index 0000000..9c61a11 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/ex-node.pdf differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/foo.js b/hw4/Claudio_Maggioni/NodeStaticFiles/foo.js new file mode 100644 index 0000000..a46f8e7 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/foo.js @@ -0,0 +1,3 @@ +$('.stats').each(function(){ + console.log(typeof this.id =='undefined' ? 'sorry, no id ' : this.id); +}); \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/four-seasons.mp3 b/hw4/Claudio_Maggioni/NodeStaticFiles/four-seasons.mp3 new file mode 100644 index 0000000..44fc533 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/four-seasons.mp3 differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/freq.html b/hw4/Claudio_Maggioni/NodeStaticFiles/freq.html new file mode 100644 index 0000000..1093eed --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/freq.html @@ -0,0 +1,6 @@ + +mytitle + +Hello my name is masiar, I am 26 years old and I listen to classical music, hello hello hello. + + diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/freq.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/freq.txt new file mode 100644 index 0000000..26d165a --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/freq.txt @@ -0,0 +1 @@ +Hello my name is masiar, I am 26 years old and I listen to classical music, hello hello hello. diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/hello world node.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/hello world node.txt new file mode 100644 index 0000000..f61161b --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/hello world node.txt @@ -0,0 +1 @@ +I have spaces in my file name \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/hello.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/hello.txt new file mode 100644 index 0000000..9c80b73 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/hello.txt @@ -0,0 +1 @@ +Hello Express.js \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/identitycrisis b/hw4/Claudio_Maggioni/NodeStaticFiles/identitycrisis new file mode 100644 index 0000000..8908383 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/identitycrisis @@ -0,0 +1 @@ +I have no extension \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/images.json b/hw4/Claudio_Maggioni/NodeStaticFiles/images.json new file mode 100644 index 0000000..ab16257 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/images.json @@ -0,0 +1,554 @@ +[ + { + "title": "Caterpillar_Butterfly", + "img_thumb": "http://farm4.staticflickr.com/3024/3036341686_2a4cc2d8cd_q.jpg", + "img_src": "http://farm4.staticflickr.com/3024/3036341686_4138dfbecc_o.jpg", + "tags": "butterfly quote caterpillar wisdom quotation masterton henleylake sirwiseowl" + }, + { + "title": "Love Is A Circle ( But that circle can take many directions)", + "img_thumb": "http://farm4.staticflickr.com/3144/3086077854_7eb1f41f1c_q.jpg", + "img_src": "http://farm4.staticflickr.com/3144/3086077854_58e1b7e0c8_o.jpg", + "tags": "red flower love circle poem round directions mannyfeldman" + }, + { + "title": "Painting - Dolphin - Sylvia", + "img_thumb": "http://farm4.staticflickr.com/3098/3083171920_79cff2fb5c_q.jpg", + "img_src": "http://farm4.staticflickr.com/3098/3083171920_5cb279c494_o.jpg", + "tags": "fish art water painting acrylic folkart dolphin canvas sylvia" + }, + { + "title": "Sylvia - Folk Art", + "img_thumb": "http://farm4.staticflickr.com/3063/3010518527_91b05bf4a8_q.jpg", + "img_src": "http://farm4.staticflickr.com/3063/3010518527_216ef4671d_o.jpg", + "tags": "art painting folkart sylvia" + }, + { + "title": "The Critique", + "img_thumb": "http://farm4.staticflickr.com/3211/3067267946_82b70b00fe_q.jpg", + "img_src": "http://farm4.staticflickr.com/3211/3067267946_42c7e243fd_o.jpg", + "tags": "man ornament critique" + }, + { + "title": "Ugly Fruit #2", + "img_thumb": "http://farm4.staticflickr.com/3285/3006902054_794b0b9ae8_q.jpg", + "img_src": "http://farm4.staticflickr.com/3285/3006902054_320478abb0_o.jpg", + "tags": "orange fruit yummy ugly citrus tabletop" + }, + { + "title": "Spring!", + "img_thumb": "http://farm4.staticflickr.com/3008/2961836473_132293ceca_q.jpg", + "img_src": "http://farm4.staticflickr.com/3008/2961836473_7b419f5a67_o.jpg", + "tags": "park green water spring elizabeth queen lush outlet masterton spillway wairarapa" + }, + { + "title": "Park Fernery Collage", + "img_thumb": "http://farm4.staticflickr.com/3067/2942822270_3d57aacc2c_q.jpg", + "img_src": "http://farm4.staticflickr.com/3067/2942822270_a291bf6f8a_o.jpg", + "tags": "picnik masterton queenelizabethpark koru wairarapa fernery" + }, + { + "title": "Time Keepers #1", + "img_thumb": "http://farm4.staticflickr.com/3083/2900009148_83fc0da107_q.jpg", + "img_src": "http://farm4.staticflickr.com/3083/2900009148_622a0f7ce6_o.jpg", + "tags": "love walking couple running christian positive sweethearts halfmarathon timekeepers carterton shinninglight" + }, + { + "title": "\" Just Right, Don't Move!\"", + "img_thumb": "http://farm4.staticflickr.com/3158/2900008246_9403d3bcee_q.jpg", + "img_src": "http://farm4.staticflickr.com/3158/2900008246_6540470bf2_o.jpg", + "tags": "spin bikes gym clm" + }, + { + "title": "Peace Lily", + "img_thumb": "http://farm1.staticflickr.com/128/317450907_0925e56c88_q.jpg", + "img_src": "http://farm1.staticflickr.com/128/317450907_0925e56c88_o.jpg", + "tags": "flower peace lily" + }, + { + "title": "Wind Song", + "img_thumb": "http://farm1.staticflickr.com/80/215500457_b97dc04a75_q.jpg", + "img_src": "http://farm1.staticflickr.com/80/215500457_b97dc04a75_o.jpg", + "tags": "" + }, + { + "title": "Lightbox Daisy For Gale", + "img_thumb": "http://farm1.staticflickr.com/161/338097953_2a383c8d6c_q.jpg", + "img_src": "http://farm1.staticflickr.com/161/338097953_2a383c8d6c_o.jpg", + "tags": "flower daisy impressedbeauty" + }, + { + "title": "Pure White Rose", + "img_thumb": "http://farm1.staticflickr.com/46/132157195_cd5b583c04_q.jpg", + "img_src": "http://farm1.staticflickr.com/46/132157195_cd5b583c04_o.jpg", + "tags": "rose photos master" + }, + { + "title": "Paradise For The Birds", + "img_thumb": "http://farm1.staticflickr.com/104/313200218_b80f8a2589_q.jpg", + "img_src": "http://farm1.staticflickr.com/104/313200218_b80f8a2589_o.jpg", + "tags": "flower quality flax abigfave impressedbeauty" + }, + { + "title": "Tabletop", + "img_thumb": "http://farm1.staticflickr.com/93/278516623_311c76e55c_q.jpg", + "img_src": "http://farm1.staticflickr.com/93/278516623_311c76e55c_o.jpg", + "tags": "flower tabletop lilyofthevalley" + }, + { + "title": "Vacation Dream!", + "img_thumb": "http://farm1.staticflickr.com/172/378737758_ed2b3466a7_q.jpg", + "img_src": "http://farm1.staticflickr.com/172/378737758_ed2b3466a7_o.jpg", + "tags": "vacation holiday kids poem" + }, + { + "title": "Light And Bright", + "img_thumb": "http://farm1.staticflickr.com/178/400090955_b6dd6d6161_q.jpg", + "img_src": "http://farm1.staticflickr.com/178/400090955_b6dd6d6161_o.jpg", + "tags": "white tree blossom picnik flickrdiamond" + }, + { + "title": "Post-it Stickers", + "img_thumb": "http://farm1.staticflickr.com/136/360078113_bdd169fc2e_q.jpg", + "img_src": "http://farm1.staticflickr.com/136/360078113_bdd169fc2e_o.jpg", + "tags": "postit lightbox" + }, + { + "title": "Bee's Delight", + "img_thumb": "http://farm1.staticflickr.com/166/390903880_79db69ce73_q.jpg", + "img_src": "http://farm1.staticflickr.com/166/390903880_79db69ce73_o.jpg", + "tags": "flower" + }, + { + "title": "Sunset", + "img_thumb": "http://farm1.staticflickr.com/157/413887722_5cdcb7af93_q.jpg", + "img_src": "http://farm1.staticflickr.com/157/413887722_2fe587a179_o.jpg", + "tags": "sunset clouds masterton blueribbonwinner" + }, + { + "title": "The 2006 balloon festival is fast approaching", + "img_thumb": "http://farm1.staticflickr.com/49/111124453_1bf152c2e3_q.jpg", + "img_src": "http://farm1.staticflickr.com/49/111124453_1bf152c2e3_o.jpg", + "tags": "balloons wairarapa" + }, + { + "title": "Harvest Time", + "img_thumb": "http://farm1.staticflickr.com/125/401490019_6896f4916a_q.jpg", + "img_src": "http://farm1.staticflickr.com/125/401490019_6896f4916a_o.jpg", + "tags": "horse wheat harvest nostalgia hay harvester clydesdale wairarapa harvesttime carterton naturesfinest vintagemachineryclub" + }, + { + "title": "Exploration (Table-Top)", + "img_thumb": "http://farm1.staticflickr.com/51/139449439_bd6c9ec072_q.jpg", + "img_src": "http://farm1.staticflickr.com/51/139449439_bd6c9ec072_o.jpg", + "tags": "snail tabletop" + }, + { + "title": "Waiting In The Rain", + "img_thumb": "http://farm1.staticflickr.com/45/168509762_9f740a6ff5_q.jpg", + "img_src": "http://farm1.staticflickr.com/45/168509762_9f740a6ff5_o.jpg", + "tags": "" + }, + { + "title": "Look Left, Look Right", + "img_thumb": "http://farm1.staticflickr.com/57/174174043_749a00e1d8_q.jpg", + "img_src": "http://farm1.staticflickr.com/57/174174043_749a00e1d8_o.jpg", + "tags": "" + }, + { + "title": "Tabletop Nonsense", + "img_thumb": "http://farm1.staticflickr.com/121/297567068_56eeb3c80b_q.jpg", + "img_src": "http://farm1.staticflickr.com/121/297567068_56eeb3c80b_o.jpg", + "tags": "blue tomato cucumber fork celery" + }, + { + "title": "Before The Storm", + "img_thumb": "http://farm1.staticflickr.com/108/297095965_80bff2894b_q.jpg", + "img_src": "http://farm1.staticflickr.com/108/297095965_80bff2894b_o.jpg", + "tags": "sky storm clouds" + }, + { + "title": "Kingfisher (Kotare)", + "img_thumb": "http://farm1.staticflickr.com/50/158272408_716eabc603_q.jpg", + "img_src": "http://farm1.staticflickr.com/50/158272408_716eabc603_o.jpg", + "tags": "kingfisher" + }, + { + "title": "Summer Time!!", + "img_thumb": "http://farm1.staticflickr.com/114/309864904_8d5bcfcb47_q.jpg", + "img_src": "http://farm1.staticflickr.com/114/309864904_8d5bcfcb47_o.jpg", + "tags": "rose" + }, + { + "title": "Cotton Bud Swirl", + "img_thumb": "http://farm1.staticflickr.com/84/245005863_f2c8ce7804_q.jpg", + "img_src": "http://farm1.staticflickr.com/84/245005863_f2c8ce7804_o.jpg", + "tags": "" + }, + { + "title": "Winter Sunrise", + "img_thumb": "http://farm2.staticflickr.com/1422/613657493_20d8fb1f1f_q.jpg", + "img_src": "http://farm2.staticflickr.com/1422/613657493_1d00ba4212_o.jpg", + "tags": "trees winter sunrise fence frost cows" + }, + { + "title": "Full Steam Ahead! (Black & White)", + "img_thumb": "http://farm1.staticflickr.com/171/400231570_a93a03df37_q.jpg", + "img_src": "http://farm1.staticflickr.com/171/400231570_a93a03df37_o.jpg", + "tags": "train searchthebest steam locomotive picnik steamtrain" + }, + { + "title": "Carrie's Marbles! The large marble is for thinking, The rest are just loose marbles", + "img_thumb": "http://farm1.staticflickr.com/149/354327704_04297d9675_q.jpg", + "img_src": "http://farm1.staticflickr.com/149/354327704_04297d9675_o.jpg", + "tags": "stones pebbles marbles" + }, + { + "title": "Colour My Day", + "img_thumb": "http://farm1.staticflickr.com/98/419305621_7cdfbcc608_q.jpg", + "img_src": "http://farm1.staticflickr.com/98/419305621_87b8a38d82_o.jpg", + "tags": "color ballooncolour" + }, + { + "title": "Lightbox Carnation", + "img_thumb": "http://farm1.staticflickr.com/180/366212220_b911aa88f3_q.jpg", + "img_src": "http://farm1.staticflickr.com/180/366212220_b911aa88f3_o.jpg", + "tags": "yellow carnation lightbox" + }, + { + "title": "Flower", + "img_thumb": "http://farm1.staticflickr.com/143/340291358_bff340253b_q.jpg", + "img_src": "http://farm1.staticflickr.com/143/340291358_bff340253b_o.jpg", + "tags": "flower lightbox" + }, + { + "title": "Lilly Of The Valley", + "img_thumb": "http://farm1.staticflickr.com/115/270493977_133a617c2a_q.jpg", + "img_src": "http://farm1.staticflickr.com/115/270493977_133a617c2a_o.jpg", + "tags": "white flower lilyofthevalley excellence abigfave" + }, + { + "title": "Coffee and Cake", + "img_thumb": "http://farm1.staticflickr.com/130/371172885_18fbb535fe_q.jpg", + "img_src": "http://farm1.staticflickr.com/130/371172885_18fbb535fe_o.jpg", + "tags": "coffee cake painting paint acrylic canvas" + }, + { + "title": "Spring Beauty", + "img_thumb": "http://farm1.staticflickr.com/93/221386283_608ffb9e49_q.jpg", + "img_src": "http://farm1.staticflickr.com/93/221386283_608ffb9e49_o.jpg", + "tags": "flower cffaa" + }, + { + "title": "Sun Burst!", + "img_thumb": "http://farm3.staticflickr.com/2384/1501073136_10db17749e_q.jpg", + "img_src": "http://farm3.staticflickr.com/2384/1501073136_1459c159f7_o.jpg", + "tags": "trees sunlight shadows shade diamondclassphotographer flickrdiamond diamondclassphotography onlythebestare" + }, + { + "title": "Power of steam", + "img_thumb": "http://farm1.staticflickr.com/31/100898032_acc3f825ae_q.jpg", + "img_src": "http://farm1.staticflickr.com/31/100898032_acc3f825ae_o.jpg", + "tags": "trains" + }, + { + "title": "Majestic!", + "img_thumb": "http://farm3.staticflickr.com/2305/1807474456_b64a691f10_q.jpg", + "img_src": "http://farm3.staticflickr.com/2305/1807474456_d8f3b2321c_o.jpg", + "tags": "white pigeon" + }, + { + "title": "Man In Crisis", + "img_thumb": "http://farm1.staticflickr.com/61/160435367_c00d2016ce_q.jpg", + "img_src": "http://farm1.staticflickr.com/61/160435367_c00d2016ce_o.jpg", + "tags": "man crisis" + }, + { + "title": "Mr Panda", + "img_thumb": "http://farm1.staticflickr.com/77/193707367_3027a754a7_q.jpg", + "img_src": "http://farm1.staticflickr.com/77/193707367_3027a754a7_o.jpg", + "tags": "painting panda folkart" + }, + { + "title": "Winter Morning", + "img_thumb": "http://farm1.staticflickr.com/149/373931818_2d70ec1f4d_q.jpg", + "img_src": "http://farm1.staticflickr.com/149/373931818_2d70ec1f4d_o.jpg", + "tags": "road winter people mist tree fog blackwhite poem" + }, + { + "title": "East Coast Church", + "img_thumb": "http://farm1.staticflickr.com/159/355314482_232e2308fe_q.jpg", + "img_src": "http://farm1.staticflickr.com/159/355314482_232e2308fe_o.jpg", + "tags": "church" + }, + { + "title": "Exploration (Table-Top)", + "img_thumb": "http://farm1.staticflickr.com/44/139449392_5a1baaf278_q.jpg", + "img_src": "http://farm1.staticflickr.com/44/139449392_5a1baaf278_o.jpg", + "tags": "snail tabletop" + }, + { + "title": "How to tell when you are flying over Africa", + "img_thumb": "http://farm1.staticflickr.com/45/152308039_6c30ff835f_q.jpg", + "img_src": "http://farm1.staticflickr.com/45/152308039_6c30ff835f_o.jpg", + "tags": "joke" + }, + { + "title": "\"Sylvia\"", + "img_thumb": "http://farm1.staticflickr.com/185/377856060_44ada2c267_q.jpg", + "img_src": "http://farm1.staticflickr.com/185/377856060_44ada2c267_o.jpg", + "tags": "rose poem" + }, + { + "title": "First Oil Painting", + "img_thumb": "http://farm1.staticflickr.com/120/314354719_43b83e10ab_q.jpg", + "img_src": "http://farm1.staticflickr.com/120/314354719_43b83e10ab_o.jpg", + "tags": "painting canvas oilpainting" + }, + { + "title": "Wind Power", + "img_thumb": "http://farm1.staticflickr.com/12/96640697_33906e4123_q.jpg", + "img_src": "http://farm1.staticflickr.com/12/96640697_33906e4123_o.jpg", + "tags": "power wind" + }, + { + "title": "Farm Shed In Sepia", + "img_thumb": "http://farm1.staticflickr.com/121/304519904_d167d266b0_q.jpg", + "img_src": "http://farm1.staticflickr.com/121/304519904_d167d266b0_o.jpg", + "tags": "sepia abigfave" + }, + { + "title": "On Strike!", + "img_thumb": "http://farm1.staticflickr.com/174/409597558_ad1908b79a_q.jpg", + "img_src": "http://farm1.staticflickr.com/174/409597558_15f943b777_o.jpg", + "tags": "old truck vintage" + }, + { + "title": "Summer beauty", + "img_thumb": "http://farm1.staticflickr.com/165/335917888_8d7c6d8963_q.jpg", + "img_src": "http://farm1.staticflickr.com/165/335917888_8d7c6d8963_o.jpg", + "tags": "flower instntfave" + }, + { + "title": "Bird Table Reflection", + "img_thumb": "http://farm1.staticflickr.com/165/361722103_29757604f1_q.jpg", + "img_src": "http://farm1.staticflickr.com/165/361722103_29757604f1_o.jpg", + "tags": "blue lake water birds table sparrow henleylake ultimateshot" + }, + { + "title": "\"Don't - Forget - Me\" -- Memories", + "img_thumb": "http://farm1.staticflickr.com/86/279323146_948a308e10_q.jpg", + "img_src": "http://farm1.staticflickr.com/86/279323146_948a308e10_o.jpg", + "tags": "flower rocks" + }, + { + "title": "W-o-o-o-o-o-ww! A Wolf Poem", + "img_thumb": "http://farm1.staticflickr.com/121/271069081_e0b2412b66_q.jpg", + "img_src": "http://farm1.staticflickr.com/121/271069081_e0b2412b66_o.jpg", + "tags": "painting wolf acrylic folkart poem canvas" + }, + { + "title": "Raindrops", + "img_thumb": "http://farm1.staticflickr.com/84/249288228_5d160ca871_q.jpg", + "img_src": "http://farm1.staticflickr.com/84/249288228_5d160ca871_o.jpg", + "tags": "daisy raindrops" + }, + { + "title": "Magnum", + "img_thumb": "http://farm1.staticflickr.com/94/205180977_f14d8191a9_q.jpg", + "img_src": "http://farm1.staticflickr.com/94/205180977_f14d8191a9_o.jpg", + "tags": "dog oldenglishsheepdog" + }, + { + "title": "Steam", + "img_thumb": "http://farm1.staticflickr.com/47/112342762_d73ab7c282_q.jpg", + "img_src": "http://farm1.staticflickr.com/47/112342762_d73ab7c282_o.jpg", + "tags": "trains steamtrains" + }, + { + "title": "Against The Sky", + "img_thumb": "http://farm1.staticflickr.com/69/166795938_cfe25139b9_q.jpg", + "img_src": "http://farm1.staticflickr.com/69/166795938_cfe25139b9_o.jpg", + "tags": "leaves" + }, + { + "title": "Christmas Time!", + "img_thumb": "http://farm1.staticflickr.com/123/328445296_910f2a19a6_q.jpg", + "img_src": "http://farm1.staticflickr.com/123/328445296_910f2a19a6_o.jpg", + "tags": "candles impressedbeauty" + }, + { + "title": "Wairarapa Sunrise", + "img_thumb": "http://farm1.staticflickr.com/89/256865837_d02ce89058_q.jpg", + "img_src": "http://farm1.staticflickr.com/89/256865837_d02ce89058_o.jpg", + "tags": "red sky clouds sunrise" + }, + { + "title": "Girl With Fawn.Taken at Thornton Beach, near Whakatane BOP", + "img_thumb": "http://farm1.staticflickr.com/45/126874345_e4004d4427_q.jpg", + "img_src": "http://farm1.staticflickr.com/45/126874345_e4004d4427_o.jpg", + "tags": "fawn abigfave photooftheweek082006" + }, + { + "title": "Criteriums (Sprints)", + "img_thumb": "http://farm1.staticflickr.com/145/372825411_4ef0b7d27f_q.jpg", + "img_src": "http://farm1.staticflickr.com/145/372825411_4ef0b7d27f_o.jpg", + "tags": "road bike race speed cycleclassic" + }, + { + "title": "Garden Color", + "img_thumb": "http://farm1.staticflickr.com/84/212174018_bb1faa3903_q.jpg", + "img_src": "http://farm1.staticflickr.com/84/212174018_bb1faa3903_o.jpg", + "tags": "flower garden" + }, + { + "title": "Yellow Mellow!", + "img_thumb": "http://farm1.staticflickr.com/112/299191739_da2131c07d_q.jpg", + "img_src": "http://farm1.staticflickr.com/112/299191739_da2131c07d_o.jpg", + "tags": "flower yellow" + }, + { + "title": "Mt Holdsworth", + "img_thumb": "http://farm1.staticflickr.com/44/135578268_37aaae7597_q.jpg", + "img_src": "http://farm1.staticflickr.com/44/135578268_37aaae7597_o.jpg", + "tags": "wairarapa mtholdsworth" + }, + { + "title": "Exploration (Table-Top)", + "img_thumb": "http://farm1.staticflickr.com/49/139449342_b1410318cf_q.jpg", + "img_src": "http://farm1.staticflickr.com/49/139449342_b1410318cf_o.jpg", + "tags": "snail tabletop" + }, + { + "title": "The Kiss!", + "img_thumb": "http://farm3.staticflickr.com/2349/2147792644_bd53be73d9_q.jpg", + "img_src": "http://farm3.staticflickr.com/2349/2147792644_aa31be4778_o.jpg", + "tags": "wedding friends party love sepia yummy hands kiss soft passion romantic" + }, + { + "title": "Tabletop Beauty", + "img_thumb": "http://farm4.staticflickr.com/3163/2814566055_2aa0dd375d_q.jpg", + "img_src": "http://farm4.staticflickr.com/3163/2814566055_05fa576ab3_o.jpg", + "tags": "flower macro nature floral petals tabletop" + }, + { + "title": "Wind Power Lighting Up The World.", + "img_thumb": "http://farm4.staticflickr.com/3166/2874716842_a8011f07c3_q.jpg", + "img_src": "http://farm4.staticflickr.com/3166/2874716842_1ee972da95_o.jpg", + "tags": "power wind windpower" + }, + { + "title": "Health Drink", + "img_thumb": "http://farm4.staticflickr.com/3188/2917625346_290e7dbfee_q.jpg", + "img_src": "http://farm4.staticflickr.com/3188/2917625346_9989acfa84_o.jpg", + "tags": "glass table cafe drink straw fruitdrink" + }, + { + "title": "Sun Burst!", + "img_thumb": "http://farm4.staticflickr.com/3447/3374522548_8440986991_q.jpg", + "img_src": "http://farm4.staticflickr.com/3447/3374522548_1849be676c_o.jpg", + "tags": "morning lake reflection water sunrise balloons fiesta balloonfiesta sunburst masterton wairarapa henleylake 2009wairarapaballoonfiesta" + }, + { + "title": "Wool Fling!", + "img_thumb": "http://farm4.staticflickr.com/3664/3333227123_5ae5606863_q.jpg", + "img_src": "http://farm4.staticflickr.com/3664/3333227123_801e6bc97f_o.jpg", + "tags": "fling wool table masterton goldenshares" + }, + { + "title": "Life Is About.....", + "img_thumb": "http://farm5.staticflickr.com/4020/4276602783_b877508bc2_q.jpg", + "img_src": "http://farm5.staticflickr.com/4020/4276602783_34bab1fa4b_o.jpg", + "tags": "ocean life sea beach coast words quotation" + }, + { + "title": "Move It!", + "img_thumb": "http://farm3.staticflickr.com/2561/4200536021_a33c2a2c40_q.jpg", + "img_src": "http://farm3.staticflickr.com/2561/4200536021_1d9261209b_o.jpg", + "tags": "collage shoes health gym weights fitnes spinbikes" + }, + { + "title": "Halloween Fun", + "img_thumb": "http://farm3.staticflickr.com/2555/4054153361_ec788ce2cb_q.jpg", + "img_src": "http://farm3.staticflickr.com/2555/4054153361_8e4e75d262_o.jpg", + "tags": "moon halloween fun picnik" + }, + { + "title": "Twenty Reasons Why Porridge Is The Ultimate Health Food........", + "img_thumb": "http://farm4.staticflickr.com/3174/2975927428_9fb643bb2c_q.jpg", + "img_src": "http://farm4.staticflickr.com/3174/2975927428_d8c0bb2890_o.jpg", + "tags": "food breakfast yummy ultimate health maplesyrup oats saucepan satisfied porriage" + }, + { + "title": "Morning Snack", + "img_thumb": "http://farm5.staticflickr.com/4021/4643355404_67edf1734b_q.jpg", + "img_src": "http://farm5.staticflickr.com/4021/4643355404_dcdf25fa60_o.jpg", + "tags": "food bread plate snack picnik" + }, + { + "title": "Love Is----", + "img_thumb": "http://farm5.staticflickr.com/4079/4887329096_6c15e22eb7_q.jpg", + "img_src": "http://farm5.staticflickr.com/4079/4887329096_a7e2802f0a_o.jpg", + "tags": "park trees love beautiful flowing picnik masterton queenelizabethpark wairarapa beautyunoticed" + }, + { + "title": "You And Me!", + "img_thumb": "http://farm6.staticflickr.com/5127/5253567732_d64a7a0f8e_q.jpg", + "img_src": "http://farm6.staticflickr.com/5127/5253567732_68c17f264d_o.jpg", + "tags": "bear friends love scrapbook teddy creation ornaments forever picnik tabletop" + }, + { + "title": "Let Your Light Shine ~~~ Radiate Love", + "img_thumb": "http://farm6.staticflickr.com/5201/5272659734_c51d924822_q.jpg", + "img_src": "http://farm6.staticflickr.com/5201/5272659734_6cdb3c5b29_o.jpg", + "tags": "light flower love words shine clematis strength wisdom radiate picnik courage beautyunoticed" + }, + { + "title": "Drop A Pebble In The Water;", + "img_thumb": "http://farm6.staticflickr.com/5022/5605170026_c9f369755f_q.jpg", + "img_src": "http://farm6.staticflickr.com/5022/5605170026_71b716de69_o.jpg", + "tags": "blue sky water words poem pebble picnik laketaupo beautyunoticed" + }, + { + "title": "Out With The Old, In With The New", + "img_thumb": "http://farm8.staticflickr.com/7002/6609586149_8207194d35_q.jpg", + "img_src": "http://farm8.staticflickr.com/7002/6609586149_6cb68a19b5_o.jpg", + "tags": "new old year newyear picnik 2012" + }, + { + "title": "Coffee Nose!", + "img_thumb": "http://farm8.staticflickr.com/7154/6585719715_a894411b78_q.jpg", + "img_src": "http://farm8.staticflickr.com/7154/6585719715_191f28c604_o.jpg", + "tags": "sign shop nose cafe mural coffeeshop masterton megacafe" + }, + { + "title": "Balancing Act", + "img_thumb": "http://farm4.staticflickr.com/3417/5769624015_7910c58f75_q.jpg", + "img_src": "http://farm4.staticflickr.com/3417/5769624015_6ea42ce625_o.jpg", + "tags": "boy lake water sport training boat canoe balancing picnik masterton waka henleylake" + }, + { + "title": "Yeah! But I Can't See The Price Tags!", + "img_thumb": "http://farm7.staticflickr.com/6074/6048290118_e61a454d3b_q.jpg", + "img_src": "http://farm7.staticflickr.com/6074/6048290118_09786acbda_o.jpg", + "tags": "snow cars night yard picnik cardealer beautyunoticed" + }, + { + "title": "Trellis Gate", + "img_thumb": "http://farm7.staticflickr.com/6074/6057436009_a1f3af15a3_q.jpg", + "img_src": "http://farm7.staticflickr.com/6074/6057436009_f13a8e7dca_o.jpg", + "tags": "winter snow garden backyard gate trellis picnik masterton wairarapa beautyunoticed" + }, + { + "title": "Far Away In The Sunshine....", + "img_thumb": "http://farm9.staticflickr.com/8434/7617672776_29716ef792_q.jpg", + "img_src": "http://farm9.staticflickr.com/8434/7617672776_dc00b66863_o.jpg", + "tags": "mountains sunshine words hills motivation masterton wairarapa aspirations tararua" + }, + { + "title": "A Prayer For Every Day", + "img_thumb": "http://farm9.staticflickr.com/8487/8270304817_836aa176a4_q.jpg", + "img_src": "http://farm9.staticflickr.com/8487/8270304817_bc9a05308f_o.jpg", + "tags": "flower garden words prayer wisdom tabletop" + } +] \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/index.html b/hw4/Claudio_Maggioni/NodeStaticFiles/index.html new file mode 100644 index 0000000..a0d26d0 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/index.html @@ -0,0 +1,9 @@ + + + + Just testing stuff + + +Just testing stuff + + \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/hello.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/hello.txt new file mode 100644 index 0000000..14e2cb7 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/hello.txt @@ -0,0 +1 @@ +Hello from level 1! \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/foo-2.js b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/foo-2.js new file mode 100644 index 0000000..e69de29 diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/a-dir/four-seasons.mp3 b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/a-dir/four-seasons.mp3 new file mode 100644 index 0000000..44fc533 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/a-dir/four-seasons.mp3 differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/a-dir/level-6/level-7/level7.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/a-dir/level-6/level-7/level7.txt new file mode 100644 index 0000000..ad5af86 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/a-dir/level-6/level-7/level7.txt @@ -0,0 +1 @@ +You made it to level 7! \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/another-dir/four-seasons.mp3 b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/another-dir/four-seasons.mp3 new file mode 100644 index 0000000..44fc533 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/another-dir/four-seasons.mp3 differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/another-dir/level-6/level-7/level7.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/another-dir/level-6/level-7/level7.txt new file mode 100644 index 0000000..ad5af86 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/another-dir/level-6/level-7/level7.txt @@ -0,0 +1 @@ +You made it to level 7! \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/bunny-is-back.mp4 b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/bunny-is-back.mp4 new file mode 100644 index 0000000..81d11df Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/bunny-is-back.mp4 differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/dafiles.zip b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/dafiles.zip new file mode 100755 index 0000000..dddf6b7 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/dafiles.zip differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/ex.pdf b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/ex.pdf new file mode 100644 index 0000000..9c61a11 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/ex.pdf differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/foo.js b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/foo.js new file mode 100644 index 0000000..a46f8e7 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/foo.js @@ -0,0 +1,3 @@ +$('.stats').each(function(){ + console.log(typeof this.id =='undefined' ? 'sorry, no id ' : this.id); +}); \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/hello-level-4.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/hello-level-4.txt new file mode 100644 index 0000000..9c80b73 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/hello-level-4.txt @@ -0,0 +1 @@ +Hello Express.js \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/identitycrisis-take2 b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/identitycrisis-take2 new file mode 100644 index 0000000..8908383 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/identitycrisis-take2 @@ -0,0 +1 @@ +I have no extension \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/level-5/four-seasons.mp3 b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/level-5/four-seasons.mp3 new file mode 100644 index 0000000..44fc533 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/level-5/four-seasons.mp3 differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/level-5/level-6/level-7/level7.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/level-5/level-6/level-7/level7.txt new file mode 100644 index 0000000..ad5af86 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/level-5/level-6/level-7/level7.txt @@ -0,0 +1 @@ +You made it to level 7! \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/one-season.mp3 b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/one-season.mp3 new file mode 100644 index 0000000..44fc533 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/one-season.mp3 differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/screen.css b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/screen.css new file mode 100644 index 0000000..bb7637f --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/screen.css @@ -0,0 +1,165 @@ +/*! + * Bootstrap v2.3.2 + * + * Copyright 2013 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world by @mdo and @fat. + */ + +.clearfix { + *zoom: 1; +} + +.clearfix:before, +.clearfix:after { + display: table; + line-height: 0; + content: ""; +} + +.clearfix:after { + clear: both; +} + +.hide-text { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} + +.input-block-level { + display: block; + width: 100%; + min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section { + display: block; +} + +audio, +canvas, +video { + display: inline-block; + *display: inline; + *zoom: 1; +} + +audio:not([controls]) { + display: none; +} + +html { + font-size: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} + +a:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} + +a:hover, +a:active { + outline: 0; +} + +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +img { + width: auto\9; + height: auto; + max-width: 100%; + vertical-align: middle; + border: 0; + -ms-interpolation-mode: bicubic; +} + +#map_canvas img, +.google-maps img { + max-width: none; +} + +button, +input, +select, +textarea { + margin: 0; + font-size: 100%; + vertical-align: middle; +} + +button, +input { + *overflow: visible; + line-height: normal; +} + +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} + +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; +} + +label, +select, +button, +input[type="button"], +input[type="reset"], +input[type="submit"], +input[type="radio"], +input[type="checkbox"] { + cursor: pointer; +} + +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} + +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; +} \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/strange.jpg b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/strange.jpg new file mode 100644 index 0000000..73bd537 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/strange.jpg differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/test.html b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/test.html new file mode 100644 index 0000000..a0d26d0 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/level-1/level-2/level-3/level-4/test.html @@ -0,0 +1,9 @@ + + + + Just testing stuff + + +Just testing stuff + + \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/myfiles.zip b/hw4/Claudio_Maggioni/NodeStaticFiles/myfiles.zip new file mode 100755 index 0000000..dddf6b7 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/myfiles.zip differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/simple.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/simple.txt new file mode 100644 index 0000000..04243a7 --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/simple.txt @@ -0,0 +1 @@ +Hello my name is vassilis. Did I say hello? Hello then. Did I? Hello! \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/style.css b/hw4/Claudio_Maggioni/NodeStaticFiles/style.css new file mode 100644 index 0000000..bb7637f --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/style.css @@ -0,0 +1,165 @@ +/*! + * Bootstrap v2.3.2 + * + * Copyright 2013 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world by @mdo and @fat. + */ + +.clearfix { + *zoom: 1; +} + +.clearfix:before, +.clearfix:after { + display: table; + line-height: 0; + content: ""; +} + +.clearfix:after { + clear: both; +} + +.hide-text { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} + +.input-block-level { + display: block; + width: 100%; + min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section { + display: block; +} + +audio, +canvas, +video { + display: inline-block; + *display: inline; + *zoom: 1; +} + +audio:not([controls]) { + display: none; +} + +html { + font-size: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} + +a:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} + +a:hover, +a:active { + outline: 0; +} + +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +img { + width: auto\9; + height: auto; + max-width: 100%; + vertical-align: middle; + border: 0; + -ms-interpolation-mode: bicubic; +} + +#map_canvas img, +.google-maps img { + max-width: none; +} + +button, +input, +select, +textarea { + margin: 0; + font-size: 100%; + vertical-align: middle; +} + +button, +input { + *overflow: visible; + line-height: normal; +} + +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} + +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; +} + +label, +select, +button, +input[type="button"], +input[type="reset"], +input[type="submit"], +input[type="radio"], +input[type="checkbox"] { + cursor: pointer; +} + +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} + +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; +} \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/thing.jpg b/hw4/Claudio_Maggioni/NodeStaticFiles/thing.jpg new file mode 100644 index 0000000..73bd537 Binary files /dev/null and b/hw4/Claudio_Maggioni/NodeStaticFiles/thing.jpg differ diff --git a/hw4/Claudio_Maggioni/NodeStaticFiles/turing.txt b/hw4/Claudio_Maggioni/NodeStaticFiles/turing.txt new file mode 100644 index 0000000..f1fbfef --- /dev/null +++ b/hw4/Claudio_Maggioni/NodeStaticFiles/turing.txt @@ -0,0 +1,17 @@ +Alan Mathison Turing, OBE, FRS (/ˈtjʊərɪŋ/ TEWR-ing; 23 June 1912 – 7 June 1954), was a British mathematician, logician, cryptanalyst, and computer scientist. He was highly influential in the development of computer science, giving a formalisation of the concepts of "algorithm" and "computation" with the Turing machine, which can be considered a model of a general purpose computer. Turing is widely considered to be the father of computer science and artificial intelligence. + +During World War II, Turing worked for the Government Code and Cypher School (GC&CS) at Bletchley Park, Britain's codebreaking centre. For a time he was head of Hut 8, the section responsible for German naval cryptanalysis. He devised a number of techniques for breaking German ciphers, including the method of the bombe, an electromechanical machine that could find settings for the Enigma machine. + +After the war, he worked at the National Physical Laboratory, where he designed the ACE, one of the first designs for a stored-program computer. In 1948 Turing joined Max Newman's Computing Laboratory at Manchester University, where he assisted in the development of the Manchester computers and became interested in mathematical biology. He wrote a paper on the chemical basis of morphogenesis, and predicted oscillating chemical reactions such as the Belousov–Zhabotinsky reaction, which were first observed in the 1960s. + +Turing's homosexuality resulted in a criminal prosecution in 1952, when homosexual acts were still illegal in the United Kingdom. He accepted treatment with female hormones (chemical castration) as an alternative to prison. Turing died in 1954, just over two weeks before his 42nd birthday, from cyanide poisoning. An inquest determined that his death was suicide; his mother and some others believed his death was accidental. On 10 September 2009, following an Internet campaign, British Prime Minister Gordon Brown made an official public apology on behalf of the British government for "the appalling way he was treated." In May 2012, a private member's bill was put before the House of Lords to grant Turing a statutory pardon. In July 2013 it gained government support. + +Early life and career + +Turing was born in London while his father was on leave from his position with the Indian Civil Service (ICS) at Chhatrapur, Bihar and Orissa Province, in British India. Turing's father, Julius Mathison Turing (1873–1947), was the son of a clergyman from a Scottish family of merchants which had been based in the Netherlands and included a baronet. Julius's wife, Alan's mother, was Ethel Sara (née Stoney; 1881–1976), daughter of Edward Waller Stoney, chief engineer of the Madras Railways. The Stoneys were a Protestant Anglo-Irish gentry family from both County Tipperary and County Longford, while Ethel herself had spent much of her childhood in County Clare. Julius' work with the ICS brought the family to British India, where his grandfather had been a general in the Bengal Army. However, both Julius and Ethel wanted their children to be brought up in England, so they moved to Maida Vale, London, where Turing was born on 23 June 1912, as recorded by a blue plaque on the outside of the house of his birth, later the Colonnade Hotel. He had an elder brother, John (the father of Sir John Dermot Turing, 12th Baronet of the Turing baronets). His father's civil service commission was still active, and during Turing's childhood years his parents travelled between Hastings in England and India, leaving their two sons to stay with a retired Army couple. Very early in life, Turing showed signs of the genius he was later to display prominently. His parents purchased a house in Guildford in 1927, and Turing lived there during school holidays. The location is also marked with a blue plaque. + +His parents enrolled him at St Michael's, a day school at 20 Charles Road, St Leonards-on-Sea, at the age of six. The headmistress recognised his talent early on, as did many of his subsequent educators. In 1926, at the age of 13, he went on to Sherborne School, a well known independent school in the market town of Sherborne in Dorset. The first day of term coincided with the 1926 General Strike in Britain, but so determined was he to attend that he rode his bicycle unaccompanied more than 60 miles (97 km) from Southampton to Sherborne, stopping overnight at an inn. + +Turing's natural inclination toward mathematics and science did not earn him respect from some of the teachers at Sherborne, whose definition of education placed more emphasis on the classics. His headmaster wrote to his parents: "I hope he will not fall between two stools. If he is to stay at public school, he must aim at becoming educated. If he is to be solely a Scientific Specialist, he is wasting his time at a public school". Despite this, Turing continued to show remarkable ability in the studies he loved, solving advanced problems in 1927 without having studied even elementary calculus. In 1928, aged 16, Turing encountered Albert Einstein's work; not only did he grasp it, but he extrapolated Einstein's questioning of Newton's laws of motion from a text in which this was never made explicit. + +At Sherborne, Turing formed an important friendship with fellow pupil Christopher Morcom, which provided inspiration in Turing's future endeavours. However, the friendship was cut short by Morcom's death in February 1930 from complications of bovine tuberculosis contracted after drinking infected cow's milk some years previously. This event shattered Turing's religious faith. He became an atheist and adopted the conviction that all phenomena, including the workings of the human brain, must be materialistic, but he still believed in the survival of the spirit after death. \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/package.json b/hw4/Claudio_Maggioni/package.json new file mode 100644 index 0000000..c47e61f --- /dev/null +++ b/hw4/Claudio_Maggioni/package.json @@ -0,0 +1,18 @@ +{ + "name": "ex4-nodejs-solutions", + "version": "0.0.1", + "description": "Web Atelier's exercise 4", + "main": "server.js", + "scripts": { + "start": "node server.js" + }, + "keywords": [ + "nodejs", + "fileserver" + ], + "author": "Cesare Pautasso, Vicenzo Ferme, Andrea Gallidabino, Vasileios Triglianos, Ilya Yanok", + "license": "MIT", + "dependencies": { + "formidable": "^1.1.1" + } +} diff --git a/hw4/Claudio_Maggioni/server.js b/hw4/Claudio_Maggioni/server.js new file mode 100755 index 0000000..6878a37 --- /dev/null +++ b/hw4/Claudio_Maggioni/server.js @@ -0,0 +1,72 @@ +#!/usr/bin/env node +// vim: set ts=2 sw=2 et tw=80: +/* + * Basic node.js HTTP server + * + */ + +const http = require('http'); +const url = require('url'); +const fs = require('fs'); + +const routes = Object.create(null); + +// Configure your routing table here... +//routes['URL'] = function; + +routes['files'] = (req, res) => { + const FILE_TYPES = { + html: 'text/html', + css: 'text/css', + txt: 'text/plain', + mp4: 'video/mp4', + ogg: 'video/ogg', + gif: 'image/gif', + jpg: 'image/jpeg', + jpeg: 'image/jpeg', + png: 'image/png', + mpeg: 'audio/mpeg', + js: 'application/javascript', + json: 'application/json', + pdf: 'application/pdf', + zip: 'application/zip' + }; + + const uri = url.parse(req.url).pathname.substring('/files'.length); + const file = __dirname + '/NodeStaticFiles' + uri; + const name = file.substring(file.lastIndexOf('/') + 1); + const ext = name.substring(name.indexOf('.') + 1); + + console.log(file, name, ext); + + fs.readFile(file, (err, data) => { + if (err) { + res.writeHead(404, { 'Content-Type': 'text/html' }); + res.end('File not found: ' + JSON.stringify(err)); + return; + } + + res.setHeader('Content-Disposition', 'attachment; filename="' + name + '"'); + res.writeHead(200, { 'Content-Type': ext in FILE_TYPES ? FILE_TYPES[ext] : + 'application/octet-stream' }); + res.end(data); + }); +} + + +// Main server handler +function onRequest(req, res) { + const pathname = url.parse(req.url).pathname; + const uri = pathname.split('/', 3)[1]; + + if (typeof routes[uri] === 'function') { + routes[uri](req, res); + } else { + res.writeHead(404); + res.end(); + } +} + + +http.createServer(onRequest).listen(3000); +console.log('Server started at localhost:3000'); diff --git a/hw4/Claudio_Maggioni/tests/package.json b/hw4/Claudio_Maggioni/tests/package.json new file mode 100644 index 0000000..c48638e --- /dev/null +++ b/hw4/Claudio_Maggioni/tests/package.json @@ -0,0 +1,21 @@ +{ + "name": "ex4-nodejs-tests", + "version": "0.0.1", + "description": "Tests for Web Atelier's exercise 4", + "scripts": { + "test": "node_modules/mocha/bin/mocha -R spec ./test" + }, + "keywords": [ + "nodejs", + "mocha", + "test" + ], + "author": "Masiar Babazadeh, Vicenzo Ferme, Andrea Gallidabino, Vasileios Triglianos", + "license": "MIT", + "devDependencies": { + "cheerio": "^0.22.0", + "mocha": "^3.1.1", + "should": "^9.0.2", + "supertest": "^2.0.0" + } +} diff --git a/hw4/Claudio_Maggioni/tests/test/config.js b/hw4/Claudio_Maggioni/tests/test/config.js new file mode 100644 index 0000000..d407d62 --- /dev/null +++ b/hw4/Claudio_Maggioni/tests/test/config.js @@ -0,0 +1,7 @@ +'use strict'; + +var path = require('path') +module.exports={ + baseURL : 'http://127.0.0.1:3000', + projectRoot : path.resolve(__dirname, '../..') +} \ No newline at end of file diff --git a/hw4/Claudio_Maggioni/tests/test/ex1.test.js b/hw4/Claudio_Maggioni/tests/test/ex1.test.js new file mode 100644 index 0000000..d89b2b6 --- /dev/null +++ b/hw4/Claudio_Maggioni/tests/test/ex1.test.js @@ -0,0 +1,126 @@ +const request = require('supertest') + , config = require('./config') + , should = require('should') + +const baseURL = config.baseURL; + +describe('Exercise 1. Static file Server', function(){ + it('should download root file', function(done){ + request(baseURL) + .get('/file/hello.txt') + .expect(200) + .expect('Content-Disposition', /attachment;.*filename=('hello\.txt'|"hello\.txt")/) + .end(function(err,res){ + if (err) return done(err); + res.text.should.equal('Hello Express.js'); + done(); + }); + }); + + it('should download level-1 file', function(done){ + request.agent(baseURL) + .get('/file/level-1/hello.txt') + .expect(200) + .expect('Content-Disposition', /attachment;.*filename=('hello\.txt'|"hello\.txt")/) + .end(function(err,res){ + if (err) return done(err); + res.text.should.equal('Hello from level 1!'); + done(); + }); + }); + + it('should download level-2 file', function(done){ + request(baseURL) + .get('/file/level-1/level-2/foo-2.js') + .expect(200) + .expect('Content-Disposition', /attachment;.*filename=('foo-2\.js'|"foo-2\.js")/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should download level-7 file', function(done){ + request.agent(baseURL) + .get('/file/level-1/level-2/level-3/level-4/level-5/level-6/level-7/level7.txt') + .expect(200) + .expect('Content-Disposition', /attachment;.*filename=('level7\.txt'|"level7\.txt")/) + .end(function(err,res){ + if (err) return done(err); + res.text.should.equal('You made it to level 7!'); + done(); + }); + }); + + it('should handle white space characters', function(done){ + request.agent(baseURL) + .get('/file/hello world node.txt') + .expect(200) + .expect('Content-Disposition', /attachment;.*filename=('hello world node\.txt'|"hello world node\.txt")/) + .end(function(err,res){ + if (err) return done(err); + res.text.should.equal('I have spaces in my file name'); + done(); + }); + }); + + it('should handle lowercase and uppercase', function(done){ + request.agent(baseURL) + .get('/file/UppeRCaSeLowerCASE.txt') + .expect(200) + .expect('Content-Disposition', /attachment;.*filename=('UppeRCaSeLowerCASE\.txt'|"UppeRCaSeLowerCASE\.txt")/) + .end(function(err,res){ + if (err) return done(err); + res.text.should.equal('My filename has uppercase and lowercase characters'); + done(); + }); + }); + + it('should handle files start with a number', function(done){ + request.agent(baseURL) + .get('/file/0.txt') + .expect(200) + .expect('Content-Disposition', /attachment;.*filename=('0\.txt'|"0\.txt")/) + .end(function(err,res){ + if (err) return done(err); + res.text.should.equal('My filename starts with a number'); + done(); + }); + }); + + it('should handle files with no extension', function(done){ + request.agent(baseURL) + .get('/file/identitycrisis') + .expect(200) + .expect('Content-Disposition', /attachment;.*filename=('identitycrisis'|"identitycrisis")/) + .end(function(err,res){ + if (err) return done(err); + res.text.should.equal('I have no extension'); + done(); + }); + }); + + it('should reply with a 404 if file does not exist', function(done){ + request(baseURL) + .get('/file/filethatdoesnotexist') + .expect(404, done); + }); + + it('should reply with a 405 if a method other than GET is used', function(done){ + request(baseURL) + .post('/file/hello.txt') + .expect(405) + .end(function(err){ + if (err) return done(err); + request(baseURL) + .put('/file/hello.txt') + .expect(405) + .end(function(err){ + if (err) return done(err); + request(baseURL) + .del('/file/hello.txt') + .expect(405, done); + }); + }); + }); +}); diff --git a/hw4/Claudio_Maggioni/tests/test/ex2.test.js b/hw4/Claudio_Maggioni/tests/test/ex2.test.js new file mode 100644 index 0000000..d1702e9 --- /dev/null +++ b/hw4/Claudio_Maggioni/tests/test/ex2.test.js @@ -0,0 +1,171 @@ +const request = require('supertest') + , config = require('./config') + , should = require('should') + +const baseURL = config.baseURL; + +describe('Exercise 2. MIME Type Headers', function(){ + it('should support text/html MIME type', function(done){ + request(baseURL) + .get('/file/index.html') + .expect(200) + .expect('Content-Type', /text\/html/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support text/css MIME type', function(done){ + request(baseURL) + .get('/file/style.css') + .expect(200) + .expect('Content-Type', /text\/css/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support text/plain MIME type', function(done){ + request(baseURL) + .get('/file/hello.txt') + .expect(200) + .expect('Content-Type', /text\/plain/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support video/mp4 MIME type', function(done){ + request(baseURL) + .get('/file/bunny.mp4') + .expect(200) + .expect('Content-Type', /video\/mp4/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support video/ogg MIME type', function(done){ + request(baseURL) + .get('/file/bunny.ogv') + .expect(200) + .expect('Content-Type', /video\/ogg/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support image/gif MIME type', function(done){ + request(baseURL) + .get('/file/afox.gif') + .expect(200) + .expect('Content-Type', /image\/gif/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support image/jpeg MIME type', function(done){ + request(baseURL) + .get('/file/thing.jpg') + .expect(200) + .expect('Content-Type', /image\/jpeg/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support image/png MIME type', function(done){ + request(baseURL) + .get('/file/asq.png') + .expect(200) + .expect('Content-Type', /image\/png/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support audio/mpeg MIME type', function(done){ + request(baseURL) + .get('/file/four-seasons.mp3') + .expect(200) + .expect('Content-Type', /audio\/mpeg/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support application/javascript MIME type', function(done){ + request(baseURL) + .get('/file/foo.js') + .expect(200) + .expect('Content-Type', /application\/javascript/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support application/json MIME type', function(done){ + request(baseURL) + .get('/file/images.json') + .expect(200) + .expect('Content-Type', /application\/json/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support application/pdf MIME type', function(done){ + request(baseURL) + .get('/file/ex-node.pdf') + .expect(200) + .expect('Content-Type', /application\/pdf/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support application/zip MIME type', function(done){ + request(baseURL) + .get('/file/myfiles.zip') + .expect(200) + .expect('Content-Type', /application\/zip/) + .end(function(err,res){ + if (err) return done(err); + done(); + }); + }); + + it('should support MIME types from nested files', function(done){ + let totalResponses =0; + function responseReceived(err){ + if (err) return done(err); + if(++totalResponses ==2){ + done(); + } + } + + request(baseURL) + .get('/file/level-1/level-2/foo-2.js') + .expect('Content-Type', /application\/javascript/) + .expect(200, responseReceived); + + request(baseURL) + .get('/file/level-1/level-2/level-3/level-4/level-5/four-seasons.mp3') + .expect('Content-Type', /audio\/mpeg/) + .expect(200, responseReceived); + }); + +}); diff --git a/hw4/Claudio_Maggioni/tests/test/ex3.test.js b/hw4/Claudio_Maggioni/tests/test/ex3.test.js new file mode 100644 index 0000000..958c02d --- /dev/null +++ b/hw4/Claudio_Maggioni/tests/test/ex3.test.js @@ -0,0 +1,210 @@ +const request = require('supertest') + , config = require('./config') + , should = require('should') + , cheerio = require('cheerio'); + +const baseURL = config.baseURL; + +describe('Exercise 3. Directory Explorer ', function(){ + describe("When exploring root directory, we:", function(done){ + const files = [ + '0.txt', + 'UppeRCaSeLowerCASE.txt', + 'afox.gif', + 'asq.png', + 'bunny.mp4', + 'bunny.ogv', + 'ex-node.pdf', + 'foo.js', + 'freq.html', + 'freq.txt', + 'four-seasons.mp3', + 'hello world node.txt', + 'hello.txt', + 'identitycrisis', + 'images.json', + 'index.html', + 'myfiles.zip', + 'simple.txt', + 'style.css', + 'thing.jpg', + 'turing.txt' ]; + + const dirs= [ + 'level-1', + 'icons' + ]; + + let $, linksArr, links, dirFound; + + before(function(done){ + request(baseURL) + .get('/explore/') + .expect(200) + .expect('Content-Type', /text\/html/) + .end(function(err, res){ + if(err) return done(err); + + $ = cheerio.load(res.text); + linksArr = []; + $('a[href]').each(function(index, el){ + var href = $(el).attr('href').toString(); + linksArr.push(href); + }); + links = linksArr.join(' '); + done(); + }); + }); + + + it('should have proper links for files', function(){ + for (let i=0, l = files.length ; i= 1.0.0" + +component-emitter@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" + integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +cookiejar@^2.0.6: + version "2.1.1" + resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.1.tgz#41ad57b1b555951ec171412a81942b1e8200d34a" + integrity sha1-Qa1XsbVVlR7BcUEqgZQrHoIA00o= + +core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +css-select@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" + integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= + dependencies: + boolbase "~1.0.0" + css-what "2.1" + domutils "1.5.1" + nth-check "~1.0.1" + +css-what@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" + integrity sha1-lGfQMsOM+u+58teVASUwYvh/ob0= + +debug@2.6.8: + version "2.6.8" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" + integrity sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw= + dependencies: + ms "2.0.0" + +debug@^2.2.0: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + +diff@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" + integrity sha1-yc45Okt8vQsFinJck98pkCeGj/k= + +dom-serializer@0, dom-serializer@~0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" + integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= + dependencies: + domelementtype "~1.1.1" + entities "~1.1.1" + +domelementtype@1, domelementtype@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" + integrity sha1-sXrtguirWeUt2cGbF1bg/BhyBMI= + +domelementtype@~1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" + integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= + +domhandler@^2.3.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.1.tgz#892e47000a99be55bbf3774ffea0561d8879c259" + integrity sha1-iS5HAAqZvlW783dP/qBWHYh5wlk= + dependencies: + domelementtype "1" + +domutils@1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" + integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= + dependencies: + dom-serializer "0" + domelementtype "1" + +domutils@^1.5.1: + version "1.6.2" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff" + integrity sha1-GVjMC0yUJuntNn+xyOhUiRsPo/8= + dependencies: + dom-serializer "0" + domelementtype "1" + +entities@^1.1.1, entities@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" + integrity sha1-blwtClYhtdra7O+AuQ7ftc13cvA= + +escape-string-regexp@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +extend@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" + integrity sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ= + +form-data@1.0.0-rc4: + version "1.0.0-rc4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-1.0.0-rc4.tgz#05ac6bc22227b43e4461f488161554699d4f8b5e" + integrity sha1-BaxrwiIntD5EYfSIFhVUaZ1Pi14= + dependencies: + async "^1.5.2" + combined-stream "^1.0.5" + mime-types "^2.1.10" + +formidable@^1.0.17: + version "1.1.1" + resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.1.1.tgz#96b8886f7c3c3508b932d6bd70c4d3a88f35f1a9" + integrity sha1-lriIb3w8NQi5Mta9cMTTqI818ak= + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +glob@7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" + integrity sha1-gFIR3wT6rxxjo2ADBs31reULLsg= + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.2" + once "^1.3.0" + path-is-absolute "^1.0.0" + +"graceful-readlink@>= 1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" + integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU= + +growl@1.9.2: + version "1.9.2" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.9.2.tgz#0ea7743715db8d8de2c5ede1775e1b45ac85c02f" + integrity sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8= + +has-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" + integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= + +he@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" + integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= + +htmlparser2@^3.9.1: + version "3.9.2" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.2.tgz#1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338" + integrity sha1-G9+HrMoPP55T+k/M6w9LTLsAszg= + dependencies: + domelementtype "^1.3.0" + domhandler "^2.3.0" + domutils "^1.5.1" + entities "^1.1.1" + inherits "^2.0.1" + readable-stream "^2.0.2" + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + +json3@3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" + integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= + +lodash._baseassign@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" + integrity sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4= + dependencies: + lodash._basecopy "^3.0.0" + lodash.keys "^3.0.0" + +lodash._basecopy@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" + integrity sha1-jaDmqHbPNEwK2KVIghEd08XHyjY= + +lodash._basecreate@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz#1bc661614daa7fc311b7d03bf16806a0213cf821" + integrity sha1-G8ZhYU2qf8MRt9A78WgGoCE8+CE= + +lodash._getnative@^3.0.0: + version "3.9.1" + resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" + integrity sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U= + +lodash._isiterateecall@^3.0.0: + version "3.0.9" + resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" + integrity sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw= + +lodash.assignin@^4.0.9: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" + integrity sha1-uo31+4QesKPoBEIysOJjqNxqKKI= + +lodash.bind@^4.1.4: + version "4.2.1" + resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35" + integrity sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU= + +lodash.create@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7" + integrity sha1-1/KEnw29p+BGgruM1yqwIkYd6+c= + dependencies: + lodash._baseassign "^3.0.0" + lodash._basecreate "^3.0.0" + lodash._isiterateecall "^3.0.0" + +lodash.defaults@^4.0.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" + integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw= + +lodash.filter@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace" + integrity sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4= + +lodash.flatten@^4.2.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" + integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8= + +lodash.foreach@^4.3.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" + integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM= + +lodash.isarguments@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + integrity sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo= + +lodash.isarray@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" + integrity sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U= + +lodash.keys@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" + integrity sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo= + dependencies: + lodash._getnative "^3.0.0" + lodash.isarguments "^3.0.0" + lodash.isarray "^3.0.0" + +lodash.map@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3" + integrity sha1-dx7Hg540c9nEzeKLGTlMNWL09tM= + +lodash.merge@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.0.tgz#69884ba144ac33fe699737a6086deffadd0f89c5" + integrity sha1-aYhLoUSsM/5plzemCG3v+t0PicU= + +lodash.pick@^4.2.1: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" + integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= + +lodash.reduce@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b" + integrity sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs= + +lodash.reject@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz#80d6492dc1470864bbf583533b651f42a9f52415" + integrity sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU= + +lodash.some@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d" + integrity sha1-G7nzFO9ri63tE7VJFpsqlF62jk0= + +methods@1.x, methods@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + +mime-db@~1.30.0: + version "1.30.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" + integrity sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE= + +mime-types@^2.1.10: + version "2.1.17" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" + integrity sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo= + dependencies: + mime-db "~1.30.0" + +mime@^1.3.4: + version "1.4.1" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" + integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== + +minimatch@^3.0.2: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= + +mkdirp@0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= + dependencies: + minimist "0.0.8" + +mocha@^3.1.1: + version "3.5.3" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.5.3.tgz#1e0480fe36d2da5858d1eb6acc38418b26eaa20d" + integrity sha512-/6na001MJWEtYxHOV1WLfsmR4YIynkUEhBwzsb+fk2qmQ3iqsi258l/Q2MWHJMImAcNpZ8DEdYAK72NHoIQ9Eg== + dependencies: + browser-stdout "1.3.0" + commander "2.9.0" + debug "2.6.8" + diff "3.2.0" + escape-string-regexp "1.0.5" + glob "7.1.1" + growl "1.9.2" + he "1.1.1" + json3 "3.3.2" + lodash.create "3.1.1" + mkdirp "0.5.1" + supports-color "3.1.2" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +nth-check@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" + integrity sha1-mSms32KPwsQQmN6rgqxYDPFJquQ= + dependencies: + boolbase "~1.0.0" + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +process-nextick-args@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" + integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= + +qs@^6.1.0: + version "6.5.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" + integrity sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A== + +readable-stream@^2.0.2, readable-stream@^2.0.5: + version "2.3.3" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" + integrity sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + safe-buffer "~5.1.1" + string_decoder "~1.0.3" + util-deprecate "~1.0.1" + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + integrity sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== + +should-equal@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/should-equal/-/should-equal-1.0.1.tgz#0b6e9516f2601a9fb0bb2dcc369afa1c7e200af7" + integrity sha1-C26VFvJgGp+wuy3MNpr6HH4gCvc= + dependencies: + should-type "^1.0.0" + +should-format@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/should-format/-/should-format-1.0.0.tgz#0a30cdab4a3bd1427bbccb8b738567bda7290d78" + integrity sha1-CjDNq0o70UJ7vMuLc4VnvacpDXg= + dependencies: + should-type "^1.0.0" + +should-type@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/should-type/-/should-type-1.4.0.tgz#0756d8ce846dfd09843a6947719dfa0d4cff5cf3" + integrity sha1-B1bYzoRt/QmEOmlHcZ36DUz/XPM= + +should@^9.0.2: + version "9.0.2" + resolved "https://registry.yarnpkg.com/should/-/should-9.0.2.tgz#b550f691e71c66788e0e96e9f721d58be6920e5a" + integrity sha1-tVD2keccZniODpbp9yHVi+aSDlo= + dependencies: + should-equal "^1.0.0" + should-format "^1.0.0" + should-type "^1.0.0" + +string_decoder@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" + integrity sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ== + dependencies: + safe-buffer "~5.1.0" + +superagent@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/superagent/-/superagent-2.3.0.tgz#703529a0714e57e123959ddefbce193b2e50d115" + integrity sha1-cDUpoHFOV+EjlZ3e+84ZOy5Q0RU= + dependencies: + component-emitter "^1.2.0" + cookiejar "^2.0.6" + debug "^2.2.0" + extend "^3.0.0" + form-data "1.0.0-rc4" + formidable "^1.0.17" + methods "^1.1.1" + mime "^1.3.4" + qs "^6.1.0" + readable-stream "^2.0.5" + +supertest@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/supertest/-/supertest-2.0.1.tgz#a058081d788f1515d4700d7502881e6b759e44cd" + integrity sha1-oFgIHXiPFRXUcA11Aogea3WeRM0= + dependencies: + methods "1.x" + superagent "^2.0.0" + +supports-color@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" + integrity sha1-cqJiiU2dQIuVbKBf83su2KbiotU= + dependencies: + has-flag "^1.0.0" + +util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= diff --git a/hw4/Claudio_Maggioni/yarn.lock b/hw4/Claudio_Maggioni/yarn.lock new file mode 100644 index 0000000..617c191 --- /dev/null +++ b/hw4/Claudio_Maggioni/yarn.lock @@ -0,0 +1,8 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +formidable@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.1.1.tgz#96b8886f7c3c3508b932d6bd70c4d3a88f35f1a9" + integrity sha1-lriIb3w8NQi5Mta9cMTTqI818ak=