YanaDH há 7 anos atrás
pai
commit
fb4798f637

+ 2 - 1
.gitignore

xqd
@@ -22,4 +22,5 @@ miaomiao/miaomiao/platforms/android/.gradle/2.2.1/taskArtifacts/cache.properties
 miaomiao/miaomiao/platforms/android/.gradle/2.2.1/taskArtifacts/fileHashes.bin
 
 platforms
-server/public/qrcodes
+server/public/qrcodes
+miaomiao/android-release.apk

BIN
.vs/miaomiao/v14/.suo


+ 1 - 1
miaomiao/config.xml

xqd
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<widget id="com.miaomiao.app" version="0.0.4" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+<widget id="com.miaomiao.app" version="0.0.5" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
     <name>瞄喵</name>
     <description>
         An Ionic Framework and Cordova project.

+ 247 - 30
miaomiao/www/.idea/workspace.xml

xqd xqd xqd xqd xqd xqd xqd
@@ -21,41 +21,41 @@
   </component>
   <component name="FileEditorManager">
     <leaf>
-      <file leaf-file-name="account.js" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/js/controllers/account.js">
+      <file leaf-file-name="dream-detail.html" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/templates/home/dream-detail.html">
           <provider selected="true" editor-type-id="text-editor">
-            <state vertical-scroll-proportion="0.0">
-              <caret line="17" column="35" selection-start-line="17" selection-start-column="33" selection-end-line="17" selection-end-column="35" />
+            <state vertical-scroll-proportion="-4.4">
+              <caret line="189" column="102" selection-start-line="189" selection-start-column="102" selection-end-line="189" selection-end-column="102" />
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="index.html" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/templates/my/index.html">
+      <file leaf-file-name="home.js" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/js/controllers/home.js">
           <provider selected="true" editor-type-id="text-editor">
-            <state vertical-scroll-proportion="-8.0">
-              <caret line="7" column="22" selection-start-line="7" selection-start-column="22" selection-end-line="7" selection-end-column="22" />
+            <state vertical-scroll-proportion="-5.625">
+              <caret line="234" column="51" selection-start-line="234" selection-start-column="51" selection-end-line="234" selection-end-column="51" />
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="dream-detail.html" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/templates/home/dream-detail.html">
+      <file leaf-file-name="account.js" pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/js/controllers/account.js">
           <provider selected="true" editor-type-id="text-editor">
-            <state vertical-scroll-proportion="-0.0">
-              <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
+            <state vertical-scroll-proportion="-0.22204968">
+              <caret line="13" column="80" selection-start-line="13" selection-start-column="80" selection-end-line="13" selection-end-column="80" />
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="my-message-sys.html" pinned="false" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/templates/my/my-message-sys.html">
+      <file leaf-file-name="msgservice.js" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/js/services/msgservice.js">
           <provider selected="true" editor-type-id="text-editor">
-            <state vertical-scroll-proportion="0.09047619">
-              <caret line="6" column="16" selection-start-line="6" selection-start-column="16" selection-end-line="6" selection-end-column="16" />
+            <state vertical-scroll-proportion="-8.25">
+              <caret line="47" column="40" selection-start-line="47" selection-start-column="40" selection-end-line="47" selection-end-column="40" />
               <folding />
             </state>
           </provider>
@@ -66,8 +66,18 @@
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
       <list>
-        <option value="$PROJECT_DIR$/js/controllers/account.js" />
         <option value="$PROJECT_DIR$/templates/my/my-message-sys.html" />
+        <option value="$PROJECT_DIR$/js/controllers/account.js" />
+        <option value="$PROJECT_DIR$/templates/home/index.html" />
+        <option value="$PROJECT_DIR$/js/controllers/add.js" />
+        <option value="$PROJECT_DIR$/js/services/myservice.js" />
+        <option value="$PROJECT_DIR$/templates/add/index.html" />
+        <option value="$PROJECT_DIR$/js/services/homeservice.js" />
+        <option value="$PROJECT_DIR$/templates/my/my-message-reply.html" />
+        <option value="$PROJECT_DIR$/js/config/router.js" />
+        <option value="$PROJECT_DIR$/js/controllers/my.js" />
+        <option value="$PROJECT_DIR$/templates/home/dream-detail.html" />
+        <option value="$PROJECT_DIR$/js/controllers/home.js" />
       </list>
     </option>
   </component>
@@ -191,6 +201,24 @@
               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
             </PATH_ELEMENT>
           </PATH>
+          <PATH>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="www" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="www" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="js" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="controllers" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+          </PATH>
         </subPane>
       </pane>
     </panes>
@@ -198,9 +226,55 @@
   <component name="PropertiesComponent">
     <property name="settings.editor.selected.configurable" value="preferences.keymap" />
     <property name="settings.editor.splitter.proportion" value="0.2" />
-    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$/../../../quanzhouda/receive/receive/www" />
     <property name="WebServerToolWindowFactoryState" value="false" />
     <property name="HbShouldOpenHtmlAsHb" value="" />
+    <property name="js-jscs-nodeInterpreter" value="D:\HPE\Note.js\Install\node.exe" />
+  </component>
+  <component name="RunManager">
+    <configuration default="true" type="DartCommandLineRunConfigurationType" factoryName="Dart Command Line Application">
+      <method />
+    </configuration>
+    <configuration default="true" type="DartTestRunConfigurationType" factoryName="Dart Test">
+      <method />
+    </configuration>
+    <configuration default="true" type="JavaScriptTestRunnerKarma" factoryName="Karma" config-file="">
+      <envs />
+      <method />
+    </configuration>
+    <configuration default="true" type="JavascriptDebugType" factoryName="JavaScript Debug">
+      <method />
+    </configuration>
+    <configuration default="true" type="NodeJSConfigurationType" factoryName="Node.js" working-dir="">
+      <method />
+    </configuration>
+    <configuration default="true" type="cucumber.js" factoryName="Cucumber.js">
+      <option name="cucumberJsArguments" value="" />
+      <option name="executablePath" />
+      <option name="filePath" />
+      <method />
+    </configuration>
+    <configuration default="true" type="js.build_tools.gulp" factoryName="Gulp.js">
+      <method />
+    </configuration>
+    <configuration default="true" type="js.build_tools.npm" factoryName="npm">
+      <command value="run-script" />
+      <scripts />
+      <envs />
+      <method />
+    </configuration>
+    <configuration default="true" type="mocha-javascript-test-runner" factoryName="Mocha">
+      <node-options />
+      <working-directory>$PROJECT_DIR$</working-directory>
+      <pass-parent-env>true</pass-parent-env>
+      <envs />
+      <ui>bdd</ui>
+      <extra-mocha-options />
+      <test-kind>DIRECTORY</test-kind>
+      <test-directory />
+      <recursive>false</recursive>
+      <method />
+    </configuration>
   </component>
   <component name="ShelveChangesManager" show_recycled="false" />
   <component name="TaskManager">
@@ -216,22 +290,22 @@
     <frame x="1358" y="-8" width="2576" height="1456" extended-state="6" />
     <editor active="true" />
     <layout>
-      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.16798107" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
+      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.16798107" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
       <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
       <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32843137" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
       <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
+      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32885906" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
       <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24916202" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
       <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
       <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
+      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
       <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
       <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
       <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
       <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
-      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32885906" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
       <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
       <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
       <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
-      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
     </layout>
   </component>
   <component name="VcsContentAnnotationSettings">
@@ -242,23 +316,59 @@
     <watches-manager />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/js/controllers/account.js">
+    <entry file="file://$PROJECT_DIR$/templates/my/index.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-8.0">
+          <caret line="7" column="22" selection-start-line="7" selection-start-column="22" selection-end-line="7" selection-end-column="22" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/templates/my/my-message-sys.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="0.16587302">
+          <caret line="11" column="0" selection-start-line="11" selection-start-column="0" selection-end-line="11" selection-end-column="0" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/services/userservice.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-19.40625">
+          <caret line="23" column="18" selection-start-line="23" selection-start-column="12" selection-end-line="23" selection-end-column="18" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/templates/home/index.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-8.928572">
+          <caret line="10" column="20" selection-start-line="10" selection-start-column="20" selection-end-line="10" selection-end-column="20" />
+          <folding>
+            <element signature="n#style#0;n#button#1;n#ion-nav-buttons#1;n#ion-view#0;n#!!top" expanded="false" />
+            <element signature="n#style#0;n#img#0;n#button#1;n#ion-nav-buttons#1;n#ion-view#0;n#!!top" expanded="false" />
+            <element signature="n#style#0;n#img#1;n#button#1;n#ion-nav-buttons#1;n#ion-view#0;n#!!top" expanded="false" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/app.js">
       <provider selected="true" editor-type-id="text-editor">
         <state vertical-scroll-proportion="0.0">
-          <caret line="17" column="35" selection-start-line="17" selection-start-column="33" selection-end-line="17" selection-end-column="35" />
+          <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/templates/my/index.html">
+    <entry file="file://$PROJECT_DIR$/js/controllers/add.js">
       <provider selected="true" editor-type-id="text-editor">
-        <state vertical-scroll-proportion="-8.0">
-          <caret line="7" column="22" selection-start-line="7" selection-start-column="22" selection-end-line="7" selection-end-column="22" />
+        <state vertical-scroll-proportion="0.43869427">
+          <caret line="19" column="14" selection-start-line="19" selection-start-column="14" selection-end-line="19" selection-end-column="14" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/templates/home/dream-detail.html">
+    <entry file="file://$PROJECT_DIR$/templates/tabs.html">
       <provider selected="true" editor-type-id="text-editor">
         <state vertical-scroll-proportion="0.0">
           <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
@@ -266,10 +376,117 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/templates/my/my-message-sys.html">
+    <entry file="file://$PROJECT_DIR$/js/services/myservice.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-8.53125">
+          <caret line="56" column="32" selection-start-line="56" selection-start-column="32" selection-end-line="56" selection-end-column="32" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/css/style.css">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-10.333333">
+          <caret line="113" column="12" selection-start-line="113" selection-start-column="1" selection-end-line="113" selection-end-column="12" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/templates/add/index.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-4.285714">
+          <caret line="4" column="22" selection-start-line="4" selection-start-column="22" selection-end-line="4" selection-end-column="22" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/services/dreamservice.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="0.17701863">
+          <caret line="12" column="35" selection-start-line="12" selection-start-column="35" selection-end-line="12" selection-end-column="35" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/templates/my/my-message-reply.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-2.2857144">
+          <caret line="2" column="91" selection-start-line="2" selection-start-column="91" selection-end-line="2" selection-end-column="91" />
+          <folding>
+            <element signature="n#style#0;n#div#0;n#ion-content#0;n#ion-view#0;n#!!top" expanded="false" />
+            <element signature="n#style#0;n#a#0;n#div#0;n#ion-content#0;n#ion-view#0;n#!!top" expanded="false" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/controllers/my.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="0.13354038">
+          <caret line="724" column="0" selection-start-line="724" selection-start-column="0" selection-end-line="724" selection-end-column="0" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/config/router.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="0.38455415">
+          <caret line="41" column="44" selection-start-line="41" selection-start-column="44" selection-end-line="41" selection-end-column="44" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/services/homeservice.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="0.31369427">
+          <caret line="28" column="66" selection-start-line="28" selection-start-column="52" selection-end-line="28" selection-end-column="66" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/services/commonservice.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="0.33280253">
+          <caret line="130" column="55" selection-start-line="130" selection-start-column="50" selection-end-line="130" selection-end-column="55" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/services/msgservice.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-8.25">
+          <caret line="47" column="40" selection-start-line="47" selection-start-column="40" selection-end-line="47" selection-end-column="40" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/templates/home/dream-detail.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-4.4">
+          <caret line="189" column="102" selection-start-line="189" selection-start-column="102" selection-end-line="189" selection-end-column="102" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/config/config.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="0.16226707">
+          <caret line="11" column="0" selection-start-line="11" selection-start-column="0" selection-end-line="11" selection-end-column="0" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/controllers/home.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-5.625">
+          <caret line="234" column="51" selection-start-line="234" selection-start-column="51" selection-end-line="234" selection-end-column="51" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/js/controllers/account.js">
       <provider selected="true" editor-type-id="text-editor">
-        <state vertical-scroll-proportion="0.09047619">
-          <caret line="6" column="16" selection-start-line="6" selection-start-column="16" selection-end-line="6" selection-end-column="16" />
+        <state vertical-scroll-proportion="-0.22204968">
+          <caret line="13" column="80" selection-start-line="13" selection-start-column="80" selection-end-line="13" selection-end-column="80" />
           <folding />
         </state>
       </provider>

+ 1 - 1
miaomiao/www/chcp.json

xqd
@@ -1,5 +1,5 @@
 {
   "update": "now",
   "content_url": "http://i.9026.com/miaomiao",
-  "release": "2017.09.26-14.51.01"
+  "release": "2017.10.09-16.22.55"
 }

+ 41 - 17
miaomiao/www/chcp.manifest

xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd
@@ -13,12 +13,16 @@
   },
   {
     "file": ".idea/workspace.xml",
-    "hash": "b19242697ecc32a3ffa45abdb69d00fd"
+    "hash": "8d59d932db629d4af18f9eccd1f846ab"
   },
   {
     "file": ".idea/www.iml",
     "hash": "c9bd9f053e6a09728e39aac3967676f1"
   },
+  {
+    "file": "css/iconfont.css",
+    "hash": "b3c0cb2fe49028f96b8e248d0a492490"
+  },
   {
     "file": "css/ionic.app.css",
     "hash": "5bc4e369650d79d26be7d3b3b1b890b1"
@@ -29,7 +33,23 @@
   },
   {
     "file": "css/style.css",
-    "hash": "d9e66499943de2a72222c0a7c9451801"
+    "hash": "3c29a4942725ac5fc2bb554201514ccf"
+  },
+  {
+    "file": "font/iconfont.eot",
+    "hash": "d28c337dbfcb2e126120c2af14fc4cea"
+  },
+  {
+    "file": "font/iconfont.svg",
+    "hash": "92bac6e1c8addb0736f7232f6ece06c5"
+  },
+  {
+    "file": "font/iconfont.ttf",
+    "hash": "5d360b50bf7a4eccbdda0b4c5972ded9"
+  },
+  {
+    "file": "font/iconfont.woff",
+    "hash": "3211ebf72791463b31a05c7ad5ca2b7d"
   },
   {
     "file": "img/alipay.png",
@@ -379,6 +399,10 @@
     "file": "img/pic_leaves.png",
     "hash": "800c5dd6b7499324be6493035b3779db"
   },
+  {
+    "file": "img/qr-scanner.svg",
+    "hash": "c213a48cd17f4036615d76967a278248"
+  },
   {
     "file": "img/weibo.png",
     "hash": "7abc549d7d1c587ecb7c3a2ba6436b5f"
@@ -393,7 +417,7 @@
   },
   {
     "file": "index.html",
-    "hash": "abaaaf407cddd2b93dde75cf6e4b5e46"
+    "hash": "8dd64f32b0a126516a6dafa5ebc39d41"
   },
   {
     "file": "js/app.js",
@@ -401,27 +425,27 @@
   },
   {
     "file": "js/config/config.js",
-    "hash": "2912f063f9c6351bd7e3b88951b73c84"
+    "hash": "70ae3723ca155133173ba3cff8de0310"
   },
   {
     "file": "js/config/router.js",
-    "hash": "465f62bcb30de8edda44a26838ac1cc5"
+    "hash": "06e2fffccf6e213ce1ffe382bb3a52fc"
   },
   {
     "file": "js/controllers/account.js",
-    "hash": "9abecae9c75b9b31c2b8f97c7016e87a"
+    "hash": "a35094c16f36fb8bfa6a076079b1b000"
   },
   {
     "file": "js/controllers/add.js",
-    "hash": "d7bc8129751f4a7edfc8933021e70a78"
+    "hash": "9f649161144a1a703d57c96c928f4b84"
   },
   {
     "file": "js/controllers/home.js",
-    "hash": "8f41d1eeb3f2d35d84aefe653c257d33"
+    "hash": "0f03be2ff0a6fe267e1b2c715fc46cdd"
   },
   {
     "file": "js/controllers/my.js",
-    "hash": "13583347bb9108ccbb09a0814e6ae6e7"
+    "hash": "882e1bd4a248a77c23eed6a90c91f4b1"
   },
   {
     "file": "js/controllers/tabs.js",
@@ -449,7 +473,7 @@
   },
   {
     "file": "js/services/homeservice.js",
-    "hash": "aa976bb925efad3887e78f07538c2ca7"
+    "hash": "5387c4eca7f2f2b4ae15d527d424656f"
   },
   {
     "file": "js/services/httpinterceptor.js",
@@ -461,7 +485,7 @@
   },
   {
     "file": "js/services/msgservice.js",
-    "hash": "4efa1cd65ac50c1f8a91a8a0574acd93"
+    "hash": "b0ce379da6f54f36e2d025b02a2043f8"
   },
   {
     "file": "js/services/myservice.js",
@@ -473,7 +497,7 @@
   },
   {
     "file": "js/services/userservice.js",
-    "hash": "3c5964bdc5a1adbe0df2e6952d4d81ab"
+    "hash": "258771680377e7159ca75882a75ee63f"
   },
   {
     "file": "js/services/utilservice.js",
@@ -765,15 +789,15 @@
   },
   {
     "file": "templates/add/index.html",
-    "hash": "4326d9aecfcf082a8d118a8f39c55e7d"
+    "hash": "601fb3e9f7ed65fb53c525479d0dd57a"
   },
   {
     "file": "templates/home/dream-detail.html",
-    "hash": "dc1750a793aabe5d147d3c557c9021fd"
+    "hash": "7ea4fabd5aa4144a1ab4b1c159a1003b"
   },
   {
     "file": "templates/home/index.html",
-    "hash": "802addf0b97d4d3c3ca21ada523e9fef"
+    "hash": "ea28610731f0025c0b4b9c571b8e9341"
   },
   {
     "file": "templates/home/oldDream.html",
@@ -793,7 +817,7 @@
   },
   {
     "file": "templates/home/userDetail.html",
-    "hash": "7744a43a82f79a3cf661387b7a98bd3d"
+    "hash": "8abb4e63fd962cdfad051a7233a8966b"
   },
   {
     "file": "templates/my/aboutMiao.html",
@@ -825,7 +849,7 @@
   },
   {
     "file": "templates/my/my-dream.html",
-    "hash": "c79b5e158bcfdfac19c0146b15e5ee50"
+    "hash": "f8383773eb21c110d0412b1052121adc"
   },
   {
     "file": "templates/my/my-message-reply.html",

+ 4 - 5
miaomiao/www/js/config/config.js

xqd
@@ -3,10 +3,9 @@
     app.constant("config", {
         // server: 'http://q8.9026.com/',
         // imgServer: 'http://q8.9026.com/attachment/'
-        //server: 'http://localhost:8092/',
-        //imgServer: 'http://localhost:8092/attachment/'
-
-        server: 'http://miao.beiyuesi.com/',
-        imgServer: 'http://miao.beiyuesi.com/attachment/'
+       // server: 'http://localhost:8092/',
+      //  imgServer: 'http://localhost:8092/attachment/',
+         server: 'http://miao.beiyuesi.com/',
+          imgServer: 'http://miao.beiyuesi.com/attachment/'
     });
 })(angular.module('app'));

+ 2 - 2
miaomiao/www/js/config/router.js

xqd xqd
@@ -31,7 +31,7 @@
             })
             .state('app.my_dreamdetail', {
                 url: '/my/dreamdetail?id=',
-                params:{id:null},
+                params:{id:null,dream_user_id:null,type:null,interaction_id:null},
                 views: {
                     'app-my': {
                         templateUrl: 'templates/home/dream-detail.html',
@@ -41,7 +41,7 @@
             })
             .state('app.home_dreamdetail', {
                 url: '/home/dreamdetail?id=',
-                params:{id:null,dream_user_id:null,type:null},
+                params:{id:null,dream_user_id:null,type:null,interaction_id:null},
                 views: {
                     'app-home': {
                         templateUrl: 'templates/home/dream-detail.html',

+ 56 - 25
miaomiao/www/js/controllers/account.js

xqd
@@ -4,32 +4,63 @@
             //$ionicNavBarDelegate.showBackButton(false);
             $scope.wechat_login = function(){
                 var scope = "snsapi_userinfo", state = "_" + (+new Date());
-                 Wechat.auth(scope, state, function (response) {
-                     // alert("response:"+JSON.stringify(response));
-                     // var response={code:1231};
-                    if(response.code){
-                        msg.loading('登录中...');
-                        userService.wechat_login(response.code).then(function(result){
-                            msg.hide();
-                             // alert("wechat_login success: " + JSON.stringify(result));
-                            if(result.data.data.user){
-                                storage.setObject('user', result.data.data.user);
-                                storage.set('token', result.data.data.token);
-                                $http.defaults.headers.common["Authorization"] = 'Bearer ' + result.data.data.token;
-                                $scope.user=storage.getObject('user');
-                                $state.go('app.home');
-                            }else{
-                                $state.go("loginAccount",{wechat:result.data.data.openid})
-                            }
-                        },function(error){
-                             console.log("loginbywx Failed: " + JSON.stringify(error));
-                            $state.go("loginAccount");
-                        });
-                    }
-                 }, function (error) {
-                    console.log("Failed: " + JSON.stringify(error));
-                 })
+                 //Wechat.auth(scope, state, function (response) {
+                 //    // alert("response:"+JSON.stringify(response));
+                 //    // var response={code:1231};
+                 //   if(response.code){
+                 //       msg.loading('登录中...');
+                 //       userService.wechat_login(response.code).then(function(result){
+                 //           msg.hide();
+                 //            // alert("wechat_login success: " + JSON.stringify(result));
+                 //           if(result.data.data.user){
+                 //               storage.setObject('user', result.data.data.user);
+                 //               storage.set('token', result.data.data.token);
+                 //               $http.defaults.headers.common["Authorization"] = 'Bearer ' + result.data.data.token;
+                 //               $scope.user=storage.getObject('user');
+                 //               $state.go('app.home');
+                 //           }else{
+                 //               $state.go("loginAccount",{wechat:result.data.data.openid})
+                 //           }
+                 //       },function(error){
+                 //            console.log("loginbywx Failed: " + JSON.stringify(error));
+                 //           $state.go("loginAccount");
+                 //       });
+                 //   }
+                 //}, function (error) {
+                 //   console.log("Failed: " + JSON.stringify(error));
+                 //});
                 //$state.go("loginAccount",{wechat:'orrk51inhmfmQRXA8VvGEQfow3Es'});
+                userService.isTest().then(function(res){
+                    if(res.data.data){
+                        Wechat.auth(scope, state, function (response) {
+                            // alert("response:"+JSON.stringify(response));
+                            // var response={code:1231};
+                           if(response.code){
+                               msg.loading('登录中...');
+                               userService.wechat_login(response.code).then(function(result){
+                                   msg.hide();
+                                    // alert("wechat_login success: " + JSON.stringify(result));
+                                   if(result.data.data.user){
+                                       storage.setObject('user', result.data.data.user);
+                                       storage.set('token', result.data.data.token);
+                                       $http.defaults.headers.common["Authorization"] = 'Bearer ' + result.data.data.token;
+                                       $scope.user=storage.getObject('user');
+                                       $state.go('app.home');
+                                   }else{
+                                       $state.go("loginAccount",{wechat:result.data.data.openid})
+                                   }
+                               },function(error){
+                                    console.log("loginbywx Failed: " + JSON.stringify(error));
+                                   $state.go("loginAccount");
+                               });
+                           }
+                        }, function (error) {
+                           console.log("Failed: " + JSON.stringify(error));
+                        })
+                    }else{
+                        $state.go("loginAccount",{wechat:'orrk51inhmfmQRXA8VvGEQfow3Es'});
+                    }
+                } )
 
             }
     }]);

+ 5 - 2
miaomiao/www/js/controllers/add.js

xqd xqd
@@ -26,11 +26,11 @@
                         var response = JSON.parse(result.response);
                         $scope.video.server = response.data.file;
                         var file = config.imgServer+response.data.file;
-                        console.log("file:"+file);
+                        //console.log("file:"+file);
                         $scope.video.isOK = true;
                         $scope.video.file = file;
                         $scope.video.vpic = config.server+'upload/vpic/'+response.data.file+'.jpg';
-                        console.log("vpic:"+$scope.video.vpic);
+                        //console.log("vpic:"+$scope.video.vpic);
                     }, function (error) {
                         msg.hide();
                         msg.error('视频上传失败');
@@ -46,6 +46,9 @@
                 })
             };
             $scope.add = function () {
+                //if($scope.video.server){
+                //    $scope.imgs=[];
+                //}
                 var data = {
                      //pics: ["https://www.baidu.com/img/bd_logo1.png"],
                     pics: $scope.imgs,

+ 24 - 4
miaomiao/www/js/controllers/home.js

xqd xqd xqd xqd xqd xqd
@@ -221,6 +221,9 @@
         , function ($scope,$location, $ionicHistory,$timeout,$state,WechatService,$ionicModal, storage , msg, common, config, homeService, $ionicTabsDelegate, $stateParams,$ionicBackdrop, $timeout, $ionicScrollDelegate, $interval) {
             var dream_user_id = $stateParams.dream_user_id;
             var id = $stateParams.id;
+            var interaction_id = $stateParams.interaction_id;
+            $scope.host = config.server;
+            $scope.imghost = config.imgServer;
             var top3user = '';
             if($stateParams.type!=null){
                 $scope.type = $stateParams.type;
@@ -236,9 +239,10 @@
                 });
             };
             // id=5;
+
             $scope.$on('$ionicView.beforeEnter', function () {
                 $ionicTabsDelegate.showBar(false);
-                $scope.load(id,dream_user_id);
+                $scope.load(id,dream_user_id,interaction_id);
                 $scope.thisUser = storage.getObject('user');
                 $scope.vm.payType = 2;
                 homeService.myInfo().then(function(result){
@@ -272,10 +276,24 @@
                 //$scope.type = 3;
                 $scope.changeType(3)
             };
+            $scope.destroyInter = function(id,dream_id){
+                msg.confirm("互动","是否删除该评论").then(function(result){
+                    if(result==true)
+                    {
+                        homeService.destroyInter(id).then(function(result){
+                            debugger;
+                            msg.text('删除成功');
+                            $scope.load(dream_id);
+                        },function(error){
+                            msg.error(error.data.message);
+                        });
+                    }
+                });
+            };
 
-        $scope.load = function (id,dream_user_id) {
+        $scope.load = function (id,dream_user_id,interaction_id) {
             msg.loading();
-            homeService.dreamDetail(id,dream_user_id).then(function (result) {
+            homeService.dreamDetail(id,dream_user_id,interaction_id).then(function (result) {
                 msg.hide();
                 console.log(result);
                 $scope.showCode  = function(codeName){
@@ -546,7 +564,7 @@
                 });
                 $scope.dream.interactions[index].show = true;
                 $scope.dream.interactions[index].focus = true;
-                $scope.input.placeholder = "评论" + name+":" + to_userid;
+                $scope.input.placeholder = "评论" + name;
                 $scope.to_userid = to_userid;
                 $scope.vm.title='';
                 $scope.vm.comment='';
@@ -557,6 +575,7 @@
                     {
                         homeService.deleteComment($scope.dream.interactions[index].comments[currentindex].id).then(function(result){
                             msg.text("删除成功");
+                            alert('删除成功');
                             $scope.load(id);
                         },function(error){
                             msg.error(error.data.message);
@@ -703,6 +722,7 @@
                 common.deletefile(file).then(function () {
                 })
             };
+
             $scope.addvideo = function () {
                 common.chooseVideo().then(function (file) {
                     common.uploadFiles(file, 2).then(function (result) {

+ 47 - 25
miaomiao/www/js/controllers/my.js

xqd xqd xqd
@@ -310,7 +310,7 @@
         }]);
     app.controller('messageReplyCtrl', ["$scope","$ionicTabsDelegate", "$state", "myService", "msg","storage"
         , function ($scope,$ionicTabsDelegate, $state,myService, msg, storage) {
-
+            
         }]);
     app.controller('personalLetterCtrl', ["$scope","$ionicTabsDelegate", "$state", "myService", "msg","storage"
         , function ($scope,$ionicTabsDelegate, $state,myService, msg, storage) {
@@ -690,11 +690,24 @@
 
     app.controller('messageReplyCtrl', ["$scope","$ionicTabsDelegate", "$state", "myService", "msg", "$ionicModal"
        , function ($scope,$ionicTabsDelegate, $state, myService, msg, $ionicModal) {
-            $scope.$on('$ionicView.beforeEnter', function () {
-                myService.replyMy().then(function(result){
-                    $scope.comments = result.data.data;
-                },function(error){
-                });
+           $scope.$on('$ionicView.beforeEnter', function () {
+               $scope.load();
+           });
+           $scope.load = function () {
+               myService.replyMy().then(function (result) {
+                   $scope.comments = result.data.data;
+               }, function (error) {
+               });
+           };
+           //我的回复
+           $scope.vm = {
+               content: "" 
+           };
+            $ionicModal.fromTemplateUrl('my-modal.html', {
+                scope: $scope,
+                animation: 'slide-in-up'
+            }).then(function (modal) {
+                $scope.modal = modal;
             });
             //$ionicModal.fromTemplateUrl('my-modal.html', {
             //    scope: $scope,
@@ -710,28 +723,37 @@
             //
             //};
 
-            $scope.goDetail =  function (){
-                debugger;
-                $state.go('app.home_dreamdetail',{id:$scope.comments.dream_id,type:2});
+            $scope.goDetail =  function (id,interaction_id){
+                $state.go('app.home_dreamdetail',{id:id,interaction_id:interaction_id,type:2});
             };
 
             //我的回复
-            $scope.vm={
-                content:"",
-                comment_id:""
-            };
-            $scope.myReplay = function(){
-                var data = {
-                    content:$scope.vm.content,
-                    comment_id:$scope.vm.id
-                };
-                myService.myReplay(data).then(function(result){
-
-                },function(error){
-
-                });
-                $scope.modal.hide();
-            }
+            //$scope.vm={
+            //    content:"",
+            //    comment_id:""
+            //};
+            //$scope.closeModal = function () {
+            //    var data = {
+            //        content: $scope.vm.content,
+            //        comment_id: $scope.item.id,
+            //        interaction_id: $scope.item.interaction_id
+            //    };
+            //    myService.myReplay(data).then(function (result) {
+            //        msg.success('回复成功');
+            //        $scope.load();
+            //    }, function (error) {
+            //        msg.error('回复失败');
+            //    });
+            //    $scope.vm.content = '';
+            //    $scope.item = null;
+            //    $scope.modal.hide();
+            //};
+            //
+            //$scope.reply = function (item) {
+            //    $scope.item = item;
+            //    $scope.modal.show();
+            //}
+            
        }]);
    
 })(angular.module('app.controllers'));

+ 8 - 2
miaomiao/www/js/services/homeservice.js

xqd
@@ -26,9 +26,15 @@
                     method:"get"
                 })
             },
-            dreamDetail: function (id,dream_user_id) {
+            dreamDetail: function (id,dream_user_id,interaction_id) {
                 return $http({
-                    url: config.server + 'api/dream/show?id=' + id + '&dream_user_id=' + dream_user_id,
+                    url: config.server + 'api/dream/show?id=' + id + '&dream_user_id=' + dream_user_id + '&interaction_id=' + interaction_id,
+                    method: "get"
+                })
+            },
+            destroyInter: function(id){
+                return $http({
+                    url: config.server + 'api/interaction/destroy?id=' + id,
                     method: "get"
                 })
             },

+ 7 - 0
miaomiao/www/js/services/myservice.js

xqd
@@ -76,6 +76,13 @@
                   method:"get"
               })
             },
+            replayMes:function(data){
+                return $http({
+                    url:config.server + "api/interaction/comment",
+                    method:"post",
+                    data:data
+                })
+            },
             toprofile:function(){
                 return $http({
                     url:config.server + "api/my/persona",

+ 6 - 1
miaomiao/www/js/services/userservice.js

xqd
@@ -21,7 +21,12 @@
                     data: { phone: mobile}
                 })
             },
-
+            isTest: function () {
+                return $http({
+                    url: config.server + 'api/test',
+                    method: "get",
+                })
+            },
             isLogin: function () {
              return !util.empty(storage.get("token")) && storage.getObject("user");
             }

+ 1 - 1
miaomiao/www/templates/add/index.html

xqd
@@ -20,7 +20,7 @@
                     <img src="img/icon_photo.svg" style="height: 40px; width: 40px; text-align: center; line-height: 40px" /><br>
                     <em style="font-size: 16px">添加图片</em>
                 </a>
-                <video ng-src="{{video.file | trustUrl}}" ng-show="video.isOK" poster="{{video.vpic}}" height="72px" width="72px" controls="controls">
+                <video ng-src="{{video.file | trustUrl}}" ng-show="video.isOK" poster="{{video.vpic}}" height="100px" width="100px" controls="controls">
                 </video>
                 <a class="btn-file-up" ng-click="addvideo()" ng-show="!video.isOK">
                     <img src="img/icon_video.svg" style="height: 40px; width: 40px; text-align: center; line-height: 40px" /><br>

+ 13 - 10
miaomiao/www/templates/home/dream-detail.html

xqd xqd xqd xqd xqd xqd
@@ -1,12 +1,12 @@
 <ion-view view-title="梦想">
     <ion-nav-buttons side="right">
+        <button ng-click="share($event)" class="button button-clear" style="height: 39px; margin-top: -1px">
+            <img src="img/icon_share.svg" style="height: 55%; width: 100%">
+        </button>
         <button class="button button-clear" style="height: 37px; margin-top: 0.6px" ng-click="toMessage()">
             <img ng-if="showMessage==1" src="img/icon_message_h.svg" style="height: 60%; width: 100%">
             <img ng-if="showMessage==0" src="img/icon_message_n.svg" style="height: 55%; width: 100%">
         </button>
-        <button ng-click="share($event)" class="button button-clear" style="height: 39px; margin-top: -1px">
-            <img src="img/icon_share.svg" style="height: 55%; width: 100%">
-        </button>
     </ion-nav-buttons>
     <div ng-if="type==1 && user.id != dream.user_id" style="position: fixed; bottom: -8px; width: 100%; z-index: 5;background: #fff;border-top: 1px solid #ECF2F7;height: 68px">
         <div class="row">
@@ -67,7 +67,7 @@
                     <ion-slides slider="data.slider">
                         <ion-slide-page ng-if="dream.video">
                             <div class="box banner">
-                                <video ng-src="{{dream.video | trustUrl}}" width="100%" style="height: 350px;" class="centerme" controls="controls" ></video>
+                                <video ng-src="{{dream.video | trustUrl}}" poster="{{dream.vpic | trustUrl}}" width="100%" style="height: 350px;" class="centerme" controls="controls" ></video>
                             </div>
                         </ion-slide-page>
                         <ion-slide-page ng-repeat="img in dream.imgs" >
@@ -163,7 +163,6 @@
                             <!--<span class="utitle kz">{{dream.end_time | lastDate}}</span>-->
                             <span class="utitle kz">{{dream.created_at}}</span>
                             <p class="subtile" style="white-space:normal; color: #666666">{{interaction.title}}</p>
-
                             <div class="picts item">
                                 <img class="slt" ng-click="openCommentPic(interaction.pic1,$event)" ng-src="{{interaction.pic1}}" ng-if="interaction.pic1" />
                                 <img class="slt" ng-click="openCommentPic(interaction.pic2,$event)" ng-src="{{interaction.pic2}}" ng-if="interaction.pic2" />
@@ -176,7 +175,7 @@
                                 <img class="slt" ng-click="openCommentPic(interaction.pic9,$event)" ng-src="{{interaction.pic9}}" ng-if="interaction.pic9" />
                             </div>
                             <div class="box banner" ng-if="interaction.video">
-                                <video ng-src="{{ interaction.video | trustUrl}}" width="100%" style="max-height: 400px;" class="centerme" controls="controls"></video>
+                                <video ng-src="{{ imghost+interaction.video | trustUrl}}" poster="{{ host+'upload/vpic/'+interaction.video+'.jpg' | trustUrl}}" width="100%" style="max-height: 400px;" class="centerme" controls="controls"></video>
                             </div>
                         </div>
                         <div class="list">
@@ -198,9 +197,12 @@
                                 </div>
                             </div>
                             <div class="row">
-                                <div class="col-offset-20 col-80">
+                                <div class="col-offset-20 col-60">
                                     <p ng-click="showmore($index)" ng-if="interaction.comments.length>4" style="color: #00C3DA; margin-top: 10px; margin-bottom: 10px"> {{interaction.showmore?"只看最近评论":"查看更多评论"}}</p>
                                 </div>
+                                <div class="col-20">
+                                    <p ng-if="user.id == dream.user.id" ng-click="destroyInter(interaction.id,interaction.dream_id)" style="color: #00C3DA; margin-top: 10px; margin-bottom: 10px">删除该互动</p>
+                                </div>
                             </div>
                         </div>
                         <!--<p ng-click="replay($event,dream.user.nickname,$index)" style="margin: 10px 0 0 50px; color: #00C3DA">评论</p>-->
@@ -307,16 +309,17 @@
             </div>
             <div class="item">上传图片,让别人更好的了解你的梦想</div>
             <div class="item itemjs">
+                {{imgs.length}}
                 <a ng-repeat="item in imgs" ng-click="showImages(item)" class="img-file-up">
                     <b style="background-image:url({{item}});"><em ng-click="deletefile(item)" class="ion-ios-close-outline"></em></b>
                 </a>
-                <a class="btn-file-up" ng-click="addpict()" ng-show="imgs.length<9">
+                <a ng-if="!video.isOK&&imgs.length<9" class="btn-file-up" ng-click="addpict()">
                     <img src="img/icon_photo.svg" style="height: 40px; width: 40px; text-align: center; line-height: 40px" /><br>
                     <em style="font-size: 16px">添加图片</em>
                 </a>
-                <video ng-src="{{video.file | trustUrl}}" ng-show="video.isOK" poster="{{video.vpic}}" height="72px" width="72px" controls="controls">
+                <video ng-src="{{video.file | trustUrl}}" ng-show="video.isOK" poster="{{video.vpic}}" height="100px" width="100px" controls="controls">
                 </video>
-                <a class="btn-file-up" ng-click="addvideo()" ng-show="!video.isOK">
+                <a ng-show="imgs.length==0" class="btn-file-up" ng-click="addvideo()">
                     <img src="img/icon_video.svg" style="height: 40px; width: 40px; text-align: center; line-height: 40px" /><br>
                     <em style="font-size: 16px">添加视频</em>
                 </a>

+ 5 - 5
miaomiao/www/templates/home/index.html

xqd
@@ -27,14 +27,14 @@
         <button class="button button-clear" ui-sref="app.home_search" style="margin-top:-3px">
             <i class="icon iconfont icon-sousuo"></i>
         </button>
-        <!--<button class="button button-clear" style="height: 35px; margin-top:4.8px" ui-sref="app.message">
+        <button class="button button-clear" style="height: 37px; margin-top: 0.6px" ui-sref="app.message">
             <img ng-if="showMessage==1" src="img/icon_message_h.svg" style="height: 60%; width: 100%">
             <img ng-if="showMessage==0" src="img/icon_message_n.svg" style="height: 55%; width: 100%">
-        </button>-->
-        <button class="button button-clear"  ui-sref="app.message">
-            <i class="icon iconfont icon-xiaoxi">
-            </i>
         </button>
+        <!--<button class="button button-clear"  ui-sref="app.message">-->
+            <!--<i class="icon iconfont icon-xiaoxi">-->
+            <!--</i>-->
+        <!--</button>-->
     </ion-nav-buttons>
     <ion-side-menus>
         <ion-side-menu-content drag-content="false">

+ 8 - 43
miaomiao/www/templates/my/my-message-reply.html

xqd
@@ -1,60 +1,25 @@
 <ion-view view-title="回复我的">
     <ion-content>
-        <div class="list list-user-set" ng-click="goDetail()" ng-repeat="item in comments" style="color: #737373; margin-bottom: 0">
+        <div class="list list-user-set" ng-click="goDetail(item.dreamid,item.interaction_id)" ng-repeat="item in comments" style="color: #737373; margin-bottom: 0">
             <a class="item" style="border-bottom: 1px solid #EAEAEA">
                 <em style="color: #000">{{item.user_nickname}} </em> 回复你:
                 <p>{{item.content}}</p>
             </a>
         </div>
     </ion-content>
-    <!--<ion-content>
-        <div class="list">
-            <div class="item reply-item">
-                <div class="row">
-                    <div class="col">
-                        <img  class="reply-head" src="../../img/demo/head1.jpg" />
-                        <div class="reply-info">
-                            <div>林更新</div>
-                            <div>2016-08-08 11:00</div>
-                        </div>
-                    </div>
-                    <div class="col reply-hf">
-                        <button class="button icon-left ion-ios-redo-outline" ng-click="openModal()">回复</button>
-                    </div>
-                </div>
-                <span class="reply-line">回复<span>@韩庚</span>:你确定是去那里吗?</span>
-                <div class="item item-thumbnail-left reply-content">
-                    &lt;!&ndash;<img ng-src="img/demo/head7.jpg" />&ndash;&gt;
-                    <img ng-src="{{item.dream_pic}}">
-                    <h2>{{item.dream_name}}</h2>
-                    <p>在斯德哥尔摩,那个只有黑白和灰色的咖啡馆里面坐下,喝一杯地道的北欧咖啡。享受难得的北欧时光!</p>
-                </div>
-                <div class="reply-bar">
-                    <div style="width: 30%;">
-                    </div>
-                </div>
-                <div class="reply-sx"><span class="calm">30%</span> 目前实现</div>
-            </div>
-        </div>
-    </ion-content>
     <script id="my-modal.html" type="text/ng-template">
         <ion-modal-view>
             <ion-header-bar class="bar-calm">
-                <button class="button button-clear icon ion-ios-arrow-back" ng-click="closeModal()">返回</button>
-                <h1 class="title">我的回复</h1>
-                <button class="button button-clear" ng-click="myReplay()">确定</button>
+                <h1 class="title">消息回复</h1>
             </ion-header-bar>
             <ion-content>
-                <div class="addmodal">
-                    <textarea placeholder="回复内容" ng-model="vm.content"></textarea>
-                </div>
-                <div class="addfoot">
-                    <img ng-src="img/图片.png" />
-                    <img ng-src="img/相机.png" />
-                    <img ng-src="img/表情.png" />
+                <textarea autofocus rows="5" style="width:100%" ng-model="vm.content" placeholder="请输入回复内容"></textarea>
+                <div class="padding">
+                    <button class="button button-full button-calm" ng-click="closeModal()">
+                        回复
+                    </button>
                 </div>
             </ion-content>
-
         </ion-modal-view>
-    </script>-->
+    </script>
 </ion-view>

+ 3 - 17
server/app/Helper/AttachmentHelper.php

xqd
@@ -68,33 +68,19 @@ trait AttachmentHelper
                     $url_path = $rel_path . '/' . $md5_filename;
 
                     if ($fileMimeType == "video/mp4" || $fileMimeType == "video/quicktime") {
-//                        $ffmpeg = FFMpeg\FFMpeg::create(array(
-//                            'ffmpeg.binaries'  => '/usr/bin/ffmpeg',
-//                            'ffprobe.binaries' => '/usr/bin/ffprobe'
-//                        ));
-//                        \Log::info($real_path);
-//                        $video = $ffmpeg->open($real_path);
-//                        if (!file_exists($vpath)) {
-//                            if (!@mkdir($vpath, 0755, true)) {
-//                                return ErrorCode::ATTACHMENT_MKDIR_FAILED;
-//                            }
-//                        }
-//                        $pic = $vpath.$md5.'.jpg';
-
-
-                        //正常缩略图
                         $ffmpeg = FFMpeg\FFMpeg::create(array(
                             'ffmpeg.binaries'  => '/usr/bin/ffmpeg',
                             'ffprobe.binaries' => '/usr/bin/ffprobe'
                         ));
+                        \Log::info($real_path);
                         $video = $ffmpeg->open($real_path);
-                        $vpath = $path;
+                        $vpath = public_path() . '/upload/vpic/';
                         if (!file_exists($vpath)) {
                             if (!@mkdir($vpath, 0755, true)) {
                                 return ErrorCode::ATTACHMENT_MKDIR_FAILED;
                             }
                         }
-                        $pic = $real_path.'.jpg';
+                        $pic = $vpath.$md5.'.jpg';
                         \Log::info($pic);
                         $video
                             ->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(1))

+ 19 - 0
server/app/Http/Controllers/Admin/Dream/InfoController.php

xqd xqd xqd
@@ -13,6 +13,7 @@ use App\Models\BaseSettingsModel;
 use App\Models\DreamImages;
 use App\Models\DreamInfoModel;
 use App\Models\SystemInfoModel;
+use App\Models\UserCareDream;
 use Illuminate\Http\Request;
 use App\Repositories\Base\Criteria\OrderBy;
 use App\Repositories\Dream\Criteria\MultiWhere;
@@ -126,6 +127,7 @@ class InfoController extends Controller
             $arr[] = $pic['pic'];
         }
         $data->imgs = $arr;
+        $data['sign'] = explode(',',$data['sign']);
         $signs = BaseSettingsModel::where('category','sign')->orderBy('id')->get();
         return view('admin.dream.info.edit',compact('data','signs'));
     }
@@ -135,6 +137,23 @@ class InfoController extends Controller
      */
     private function _updateSave() {
         $data = (array) request('data');
+        if (array_key_exists('sign',$data)) {
+            $data['sign'] = join(',',$data['sign']);
+        }
+//        后台修改排行参数时,梦想分数也改变
+        $dream_id = request('id');
+        $data2 = UserCareDream::where('dream_id',$dream_id)->get();
+        $care_num = count($data2);
+        $setting = BaseSettingsModel::where('category','paihang')->first();
+        $a = $data['parameter'];
+        $b = $setting?$setting->value:1;
+        $t = 21*3600 / 60;
+        \Log::debug($data['end_time'].' care_num:'.$care_num.' a:'.$a.' b:'.$b.' t:'.$t);
+        if ($care_num == 0) {
+            $data['score'] = (($a/$t) + $b)*100000000 ;
+        }else{
+            $data['score'] = (log($care_num) + ($a/$t) + $b)*100000000 ;
+        }
         $pics = (array) request('pic');
         if (empty($pics)) {
             $url[] = array('url'=>U( 'Dream/Info/index'),'title'=>'返回列表');

+ 7 - 2
server/app/Http/Controllers/Api/V1/AuthController.php

xqd
@@ -21,8 +21,13 @@ class AuthController extends Controller
     private $expireTimeExist     = 24*60;
 
     public function test(){
-//        return $this->error(ErrorCode::SAVE_USER_FAILED);
-        return $this->api(['test' => 'test']);
+        //test
+        if(env("APP_DEBUG")){
+            return $this->error(0);
+        }else{
+        //product
+            return $this->api(1);
+        }
     }
     /**
      * @api {post} /api/auth/login 登陆(login)

+ 1 - 1
server/app/Http/Controllers/Api/V1/Controller.php

xqd
@@ -30,7 +30,7 @@ class Controller extends BaseController
         $this->middleware('auth:api', [
             'except' => [
                 'upload', 'getCode', 'login', 'wechatLogin', 'alipayNotify', 'wechatpayNotify',
-                'download',  'test'
+                'download',  'test',
             ]
         ]);
 

+ 5 - 0
server/app/Http/Controllers/Api/V1/DreamController.php

xqd xqd
@@ -28,6 +28,7 @@ class DreamController extends Controller
      * @apiVersion 0.1.0
      * @apiParam {int} [type=home] home interaction paihang  默认all
      * @apiParam {int} id 梦想ID
+     * @apiParam  [dream_user_id] id 梦想者id
      * @apiSuccessExample {json} Success-Response:
      * HTTP/1.1 200 OK
      *               主页
@@ -194,6 +195,10 @@ class DreamController extends Controller
     public function show(Request $request)
     {
         $user = $this->getUser();
+        if (!empty($request->input('dream_user_id'))) {
+//            查看梦想后 最新最新梦想为0
+            UserCareUser::where('user_id',$user->id)->where('other_user_id',$request->input('dream_user_id'))->update(['dream_id'=>0,'dream_number'=>0]);
+        }
         $type = $request->type;    //类型
         $id = $request->id;    //梦想ID
         $user_care_dream = UserCareDream::where('user_id',$user->id)->where('dream_id',$id)->first();

+ 7 - 7
server/app/Http/Controllers/Api/V1/IndexController.php

xqd
@@ -359,37 +359,37 @@ class IndexController extends Controller
                 switch ($value) {
                     case 1:
                         $query = $query->orWhereHas('user', function ($select) use ($age) {
-                            $select->where('birthday','>=',date('Y-m-d',strtotime(date('Y')-21)))->where('birthday','<=',date('Y-m-d',strtotime(date('Y')-18)));
+                            $select->whereYear('birthday','>=',(date('Y')-21))->whereYear('birthday','<=',(date('Y')-18));
                         });
                         break;
                     case 2:
                         $query = $query->orWhereHas('user', function ($select) use ($age) {
-                            $select->where('birthday','>=',date('Y-m-d',strtotime(date('Y')-25)))->where('birthday','<=',date('Y-m-d',strtotime(date('Y')-22)));
+                            $select->whereYear('birthday','>=',(date('Y')-25))->whereYear('birthday','<=',(date('Y')-22));
                         });
                         break;
                     case 3:
                         $query = $query->orWhereHas('user', function ($select) use ($age) {
-                            $select->where('birthday','>=',date('Y-m-d',strtotime(date('Y')-29)))->where('birthday','<=',date('Y-m-d',strtotime(date('Y')-26)));
+                            $select->whereYear('birthday','>=',(date('Y')-29))->whereYear('birthday','<=',(date('Y')-26));
                         });
                         break;
                     case 4:
                         $query = $query->orWhereHas('user', function ($select) use ($age) {
-                            $select->where('birthday','>=',date('Y-m-d',strtotime(date('Y')-33)))->where('birthday','<=',date('Y-m-d',strtotime(date('Y')-30)));
+                            $select->whereYear('birthday','>=',(date('Y')-33))->whereYear('birthday','<=',(date('Y')-30));
                         });
                         break;
                     case 5:
                         $query = $query->orWhereHas('user', function ($select) use ($age) {
-                            $select->where('birthday','>=',date('Y-m-d',strtotime(date('Y')-37)))->where('birthday','<=',date('Y-m-d',strtotime(date('Y')-34)));
+                            $select->whereYear('birthday','>=',(date('Y')-37))->whereYear('birthday','<=',(date('Y')-34));
                         });
                         break;
                     case 6:
                         $query = $query->orWhereHas('user', function ($select) use ($age) {
-                            $select->where('birthday','>=',date('Y-m-d',strtotime(date('Y')-38)));
+                            $select->whereYear('birthday','<=',(date('Y')-38));
                         });
                         break;
                     case 7:
                         $query = $query->orWhereHas('user', function ($select) use ($age) {
-                            $select->where('birthday','<=',date('Y-m-d',strtotime(date('Y')-18)));
+                            $select->whereYear('birthday','>=',(date('Y')-17));
                         });
                         break;
                 }

+ 1 - 1
server/app/Http/Controllers/Api/V1/MyController.php

xqd xqd
@@ -7,6 +7,7 @@ use App\Models\BaseDictionaryOptionModel;
 use App\Models\BaseSettingsModel;
 use App\Models\CommentInfoModel;
 use App\Models\DreamInfoModel;
+use App\Models\InteractionInfo;
 use App\Models\SearchInfoModel;
 use App\Models\Suggest;
 use App\Models\SystemInfoModel;
@@ -255,7 +256,6 @@ class MyController extends Controller
     {
         $user = $this->getUser();
         $data = CommentInfoModel::where('to_user_id',$user->id)->orderBy('id','desc')->get(); //user_id
-
         foreach ($data as $item){   //访问接口  标记已读
             $item->update(['is_read'=>0]);
             $info = InteractionInfo::find($item->interaction_id);

+ 1 - 1
server/app/Http/Kernel.php

xqd
@@ -52,7 +52,7 @@ class Kernel extends HttpKernel
      * @var array
      */
     protected $routeMiddleware = [
-        'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
+        'auth' => \App\Http\Middleware\Authenticate::class,
         'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
         'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
         'can' => \Illuminate\Auth\Middleware\Authorize::class,

+ 3 - 2
server/app/Http/Middleware/Authenticate.php

xqd
@@ -18,8 +18,9 @@ class Authenticate
     public function handle($request, Closure $next, $guard = null)
     {
         if(Auth::guard($guard)->guest()) {
-            if($request->ajax()) {
-                \Log::info('Unauthorized Unauthorized ');
+//            \Log::info($guard);
+            if($request->ajax()||$request->wantsJson()||$guard=="api") {
+//                \Log::info('Unauthorized Unauthorized ');
                 return response('Unauthorized.', 401);
             } else {
                 if($guard == 'admin') {

+ 2 - 3
server/resources/views/admin/dream/info/edit.blade.php

xqd
@@ -153,11 +153,10 @@
                 <div class="form-group">
                                     
                  <label class="control-label col-sm-3">梦想标签</label>
-                                    
                    <div class="col-sm-9">
                        <select name="data[sign][]" id="data_sign" class="form-control" size=""  multiple="multiple">
-                           @foreach($signs as $sign)
-                               <option value="{{$sign->value}}" @if(isset($data['sign']) && $sign->value == $data['sign']) selected  @endif>{{$sign->value}}</option>
+                           @foreach($signs as $key =>$sign)
+                               <option value="{{$sign->value}}" @if(isset($data['sign']) && in_array($sign->value,$data['sign'])  ) selected  @endif>{{$sign->value}}</option>
                            @endforeach
                        </select>
                     </div>